body
{
     margin:0px;
    
}

body, html
{
    overflow-x:hidden !important;
}

/* =========================================
   TOP BAR
========================================= */

.top-bar {
    width: 100%;
    background: #061f5c;
    color: #ffffff;
    font-family: "Outfit", sans-serif;
    position: relative;
    z-index: 1000;
}


.top-bar-container {
    width: 100%;
   /*  max-width: 350px; */
    margin: 0 auto;
    padding: 0 50px;
}

.top-bar-content {
    min-height: 38px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 30px;
}


/* =========================================
   LEFT
========================================= */

.top-bar-left {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}


.top-bar-item {
    display: flex;
    align-items: center;
    gap: 9px;

    font-size: 11px;
    font-weight: 400;

    white-space: nowrap;
}


.top-bar-item i {
    color: #d99a22;
    font-size: 12px;
}


/* =========================================
   CENTER
========================================= */

.top-bar-center {
    display: flex;
    align-items: center;
    justify-content: left;

    gap: 30px;

    flex: 1;
}


.top-bar-contact {
    display: flex;
    align-items: center;
    gap: 8px;

    color: #ffffff;
    text-decoration: none;

    font-size: 13px;
    font-weight: 400;

    white-space: nowrap;

    transition: color 0.3s ease;
}


.top-bar-contact i {
    color: #d99a22;
    font-size: 11px;

    transition: transform 0.3s ease;
}


.top-bar-contact:hover {
    color: #d99a22;
}


.top-bar-contact:hover i {
    transform: translateY(-1px);
}


/* =========================================
   RIGHT
========================================= */

.top-bar-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;

    gap: 16px;

    flex-shrink: 0;
}


.top-bar-social {
    width: 18px;
    height: 18px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #ffffff;

    text-decoration: none;

    font-size: 11px;

    transition:
        color 0.3s ease,
        transform 0.3s ease;
}


.top-bar-social:hover {
    color: #d99a22;
    transform: translateY(-2px);
}


/* =========================================
   TABLET
   768px - 1199px
========================================= */

@media (max-width: 1199px) {

    .top-bar-container {
        padding: 0 30px;
    }


    .top-bar-content {
        gap: 20px;
    }


    .top-bar-center {
        gap: 18px;
    }


    .top-bar-contact {
        font-size: 10px;
    }


    .top-bar-item {
        font-size: 10px;
    }


    .top-bar-right {
        gap: 12px;
    }

}


/* =========================================
   SMALL TABLET
   768px - 991px
========================================= */

@media (max-width: 991px) {

    .top-bar-container {
        padding: 0 25px;
    }


    .top-bar-content {
        min-height: 36px;
    }


    .top-bar-left {
        display: none;
    }


    .top-bar-center {
        justify-content: flex-start;
        gap: 22px;
    }


    .top-bar-contact {
        font-size: 10px;
    }


    .top-bar-right {
        gap: 13px;
    }

}


/* =========================================
   MOBILE
   767px and below
========================================= */

@media (max-width: 767px) {

    .top-bar-container {
        padding: 0 15px;
    }


    .top-bar-content {
        min-height: 36px;

        justify-content: center;
        gap: 0;
    }


    /* Hide phone numbers on mobile */
    .top-bar-center {
        display: none;
    }


    /* Keep only social icons */
    .top-bar-right {
        width: 100%;

        justify-content: center;

        gap: 20px;
    }


    .top-bar-social {
        width: 20px;
        height: 20px;

        font-size: 12px;
    }

}


/* =========================================
   VERY SMALL MOBILE
   480px and below
========================================= */

@media (max-width: 480px) {

    .top-bar {
        min-height: 34px;
    }


    .top-bar-container {
        padding: 0 12px;
    }


    .top-bar-content {
        min-height: 34px;
    }


    .top-bar-right {
        gap: 18px;
    }


    .top-bar-social {
        font-size: 11px;
    }

}



/* =========================================
   MAIN HEADER
========================================= */

.header-main {
    width: 100%;
    background: #ffffff;

    position: sticky;
    top: 0;
    left: 0;

    z-index: 999;

    border-bottom: 1px solid rgba(6, 31, 92, 0.06);

    font-family: "Outfit", sans-serif;
}


.header-container {
    width: 100%;
    max-width: 1440px;

    margin: 0 auto;

    padding: 0 50px;
}


.header-wrapper {
    min-height: 82px;

    display: flex;
    align-items: center;

    gap: 30px;
}


/* =========================================
   LOGO
========================================= */

.header-logo {
    display: flex;
    align-items: center;

    flex-shrink: 0;

    text-decoration: none;
}


.header-logo img {
    display: block;

    width: 175px;
    height: auto;

    object-fit: contain;
}


/* =========================================
   NAVIGATION
========================================= */

.header-navigation {
    margin-left: auto;
}


.header-menu {
    margin: 0;
    padding: 0;

    display: flex;
    align-items: center;

    list-style: none;

    gap: 38px;
}


.header-menu-item {
    margin: 0;
    padding: 0;
}


.header-menu-link {
    position: relative;

    display: inline-flex;
    align-items: center;

    min-height: 82px;

    color: #061f5c;

    text-decoration: none;

    font-size: 17px !important;
    font-weight: 800;

    letter-spacing: 0.3px;

    transition:
        color 0.3s ease;
        font-family: 'Times New Roman';
}


/* =========================================
   NAVIGATION UNDERLINE
========================================= */

.header-menu-link::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 17px;

    width: 0;
    height: 2px;

    /* background: #d99a22; */

    transition:
        width 0.3s ease;
}


.header-menu-link:hover {
    color: #d99a22;
}


.header-menu-link:hover::after {
    width: 100%;
}


/* ACTIVE LINK */

.header-menu-link.header-menu-active {
    color: #d99a22;
}


.header-menu-link.header-menu-active::after {
    width: 100%;
}


/* =========================================
   GET A QUOTE BUTTON
========================================= */

.header-quote-button {
    min-width: 140px;
    height: 42px;

    padding: 0 20px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    background: #d99a22;
    color: #ffffff;

    text-decoration: none;

    border-radius: 8px;

    font-size: 15px;
    font-weight: 600;

    letter-spacing: 0.4px;

    flex-shrink: 0;

    transition:
        background 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}


.header-quote-button i {
    font-size: 11px;

    transition:
        transform 0.3s ease;
}


.header-quote-button:hover {
    background: #061f5c;

    transform: translateY(-2px);

    box-shadow:
        0 8px 20px rgba(6, 31, 92, 0.18);
}


.header-quote-button:hover i {
    transform: translateX(4px);
}


/* =========================================
   MOBILE MENU BUTTON
========================================= */

.header-mobile-toggle {
    width: 44px;
    height: 44px;

    padding: 0;

    display: none;

    align-items: center;
    justify-content: center;
    flex-direction: column;

    gap: 5px;

    background: transparent;

    border: 1px solid rgba(6, 31, 92, 0.15);

    border-radius: 6px;

    cursor: pointer;
}


.header-mobile-line {
    display: block;

    width: 20px;
    height: 2px;

    background: #061f5c;

    transition:
        transform 0.3s ease,
        opacity 0.3s ease;
}


/* =========================================
   TABLET
   992px - 1199px
========================================= */

@media (max-width: 1199px) {

    .header-container {
        padding: 0 30px;
    }


    .header-wrapper {
        gap: 20px;
    }


    .header-logo img {
        width: 155px;
    }


    .header-menu {
        gap: 24px;
    }


    .header-menu-link {
        font-size: 11px;
    }


    .header-quote-button {
        min-width: 125px;

        padding: 0 15px;

        font-size: 10px;
    }

}


/* =========================================
   SMALL TABLET
   768px - 991px
========================================= */

@media (max-width: 991px) {

    .header-container {
        padding: 0 25px;
    }


    .header-wrapper {
        min-height: 75px;

        justify-content: space-between;
    }


    .header-logo img {
        width: 150px;
    }


    /* Hide desktop navigation */

    .header-navigation {
        position: absolute;

        top: 100%;
        left: 0;

        width: 100%;

        margin: 0;

        background: #ffffff;

        border-top: 1px solid rgba(6, 31, 92, 0.08);

        box-shadow:
            0 10px 25px rgba(6, 31, 92, 0.08);

        display: none;
    }


    /* Navigation open */

    .header-navigation.header-navigation-open {
        display: block;
    }


    .header-menu {
        width: 100%;

        display: flex;
        flex-direction: column;
        align-items: stretch;

        gap: 0;

        padding: 10px 25px 20px;
    }


    .header-menu-item {
        width: 100%;
    }


    .header-menu-link {
        width: 100%;

        min-height: 48px;

        justify-content: flex-start;

        font-size: 12px;
    }


    .header-menu-link::after {
        left: 0;
        bottom: 5px;
    }


    .header-quote-button {
        margin-left: auto;
        margin-right: 15px;

        height: 40px;

        min-width: 120px;
    }


    .header-mobile-toggle {
        display: flex;
    }

}


/* =========================================
   MOBILE
   767px and below
========================================= */

@media (max-width: 767px) {

    .header-container {
        padding: 0 15px;
    }


    .header-wrapper {
        min-height: 68px;

        gap: 10px;
    }


    .header-logo img {
        width: 135px;
    }


    /* Hide quote button */

    .header-quote-button {
        display: none;
    }


    .header-mobile-toggle {
        margin-left: auto;

        width: 42px;
        height: 42px;
    }


    .header-menu {
        padding: 8px 15px 18px;
    }


    .header-menu-link {
        min-height: 0px;

        font-size: 12px;
    }

}


/* =========================================
   SMALL MOBILE
   480px and below
========================================= */

@media (max-width: 480px) {

    .header-wrapper {
        min-height: 64px;
    }


    .header-logo img {
        width: 125px;
    }


    .header-mobile-toggle {
        width: 40px;
        height: 40px;
    }


    .header-mobile-line {
        width: 18px;
    }

}



/*=----------slider section code-----------*/


/* =========================================
   HERO SLIDER
========================================= */

.slider-section {
    position: relative;

    width: 100%;

    overflow: hidden;

    background: #ffffff;

    font-family: "Outfit", sans-serif;
}


/* =========================================
   SLIDER WRAPPER
========================================= */

.slider-wrapper {
    position: relative;

    width: 100%;

    min-height: 500px;

    overflow: hidden;
}


.slider-container {
    position: relative;

    width: 100%;
}


/* =========================================
   SLIDE
========================================= */

.slider-slide {
    position: absolute;

    top: 0;
    left: 0;

    width: 100%;

    min-height: 500px;

    display: flex;

    opacity: 0;

    visibility: hidden;

    pointer-events: none;

    transform: translateX(30px);

    transition:
        opacity 0.8s ease,
        transform 0.8s ease,
        visibility 0.8s ease;
}


.slider-slide-active {
    position: relative;

    opacity: 1;

    visibility: visible;

    pointer-events: auto;

    transform: translateX(0);
}


/* =========================================
   LEFT CONTENT
========================================= */

.slider-content {
    position: relative;

    z-index: 5;

    width: 43%;

    min-height: 500px;

    padding:

        80px
        0
        70px
        max(7vw, 70px);

    display: flex;

    flex-direction: column;

    justify-content: center;

    background: #ffffff;
}


/* Architectural background detail */

.slider-content::before {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 300px;
    height: 300px;

    opacity: 0.08;

    background-image:

        linear-gradient(
            90deg,
            transparent 49%,
            #0b2a68 50%,
            transparent 51%
        ),

        linear-gradient(
            0deg,
            transparent 49%,
            #0b2a68 50%,
            transparent 51%
        );

    background-size: 40px 40px;

    pointer-events: none;
}


/* =========================================
   SMALL TITLE
========================================= */

.slider-small-title {
    position: relative;

    z-index: 2;

    margin-bottom: 15px;

    color: #c88917;

    font-size: 13px;

    font-weight: 600;

    letter-spacing: 1.5px;

    text-transform: uppercase;
}


/* =========================================
   MAIN TITLE
========================================= */

.slider-title {
    position: relative;

    z-index: 2;

    margin: 0;

    color: #09255c;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(45px, 4.1vw, 70px);

    line-height: 0.98;

    font-weight: 700;

    letter-spacing: -1.5px;
    padding-bottom:25px;
}


.slider-title span {
    color: #c88917;
}


/* =========================================
   TITLE LINE
========================================= */

.slider-title-line {
    position: relative;

    width: 115px;

    height: 2px;

    margin: 18px 0;

    background: #c88917;
}


.slider-title-line::after {
    content: "";

    position: absolute;

    left: 0;
    top: -5px;

    width: 55px;
    height: 1px;

    background: #09255c;
}


/* =========================================
   DESCRIPTION
========================================= */

.slider-description {
    position: relative;

    z-index: 2;

    max-width: 470px;

    margin: 0 0 25px;

    color: #263550;

    font-size: 16px;

    line-height: 1.2;
}


/* =========================================
   BUTTON AREA
========================================= */

.slider-buttons {
    position: relative;

    z-index: 3;

    display: flex;

    align-items: center;

    gap: 25px;

    flex-wrap: wrap;
}


/* =========================================
   PRIMARY BUTTON
========================================= */

.slider-primary-button {
    min-height: 46px;

    padding: 0 22px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    color: #ffffff;

    background: #09255c;

    text-decoration: none;

    border-radius: 4px;

    font-size: 16px;

    font-weight: 600;

    letter-spacing: 0.4px;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}


.slider-primary-button:hover {
    background: #c88917;

    transform: translateY(-2px);
}


.slider-primary-button i {
    transition:
        transform 0.3s ease;
}


.slider-primary-button:hover i {
    transform: translateX(4px);
}


/* =========================================
   VIDEO BUTTON
========================================= */

.slider-video-button {
    padding: 0;

    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #09255c;

    background: transparent;

    border: none;

    cursor: pointer;

    font-size: 10px;

    font-weight: 600;

    line-height: 1.4;

    text-align: left;
}


.slider-video-icon {
    width: 42px;
    height: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 2px solid #09255c;

    border-radius: 50%;

    transition:
        background 0.3s ease,
        color 0.3s ease;
}


.slider-video-icon i {
    margin-left: 2px;

    font-size: 11px;
}


.slider-video-button:hover
.slider-video-icon {
    color: #ffffff;

    background: #09255c;
}


/* =========================================
   TEXT BUTTON
========================================= */

.slider-text-button {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding-bottom: 6px;

    color: #09255c;

    text-decoration: none;

    border-bottom: 1px solid #c88917;

    font-size: 11px;

    font-weight: 600;
}


.slider-text-button i {
    transition:
        transform 0.3s ease;
}


.slider-text-button:hover i {
    transform: translateX(4px);
}


/* =========================================
   IMAGE AREA
========================================= */

.slider-image-wrapper {
    position: relative;

    /* width: 57%;

    min-height: 500px;

    overflow: hidden;

    background: #09255c; */
}


/* =========================================
   IMAGE
========================================= */

.slider-image {
    position: absolute;

    top: 0;
    left: 0;

    /* width: 100%; */
    height: 100%;

    /* object-fit: cover; */

    object-position: center;

    display: block;

    transform: scale(1.01);

    transition:
        transform 7s ease;
}


/* .slider-slide-active .slider-image {
    transform: scale(1.07);
} */


/* =========================================
   IMAGE OVERLAY
========================================= */

.slider-image-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(9, 37, 92, 0.15),
            transparent 35%
        );

    pointer-events: none;
}


/* =========================================
   BLUE ARCHITECTURAL SHAPE
========================================= */

.slider-blue-shape {
    position: absolute;

    z-index: 3;

    left: -85px;

    top: -5%;

    width: 145px;

    height: 110%;

    background: #09255c;

    transform:
        skewX(-20deg);

    border-right: 8px solid #168bd4;

    pointer-events: none;
}


/* =========================================
   GOLD LINE
========================================= */

.slider-gold-line {
    position: absolute;

    z-index: 4;

    left: -18px;

    top: 19%;

    width: 90px;

    height: 1px;

    background: #c88917;

    transform:
        rotate(45deg);
}


/* =========================================
   SLIDER ARROWS
========================================= */

.slider-arrow {
    position: absolute;

    z-index: 20;

    top: 50%;

    width: 42px;
    height: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #ffffff;

    background: #09255c;

    border: none;

    border-radius: 50%;

    cursor: pointer;

    transform: translateY(-50%);

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}


.slider-arrow:hover {
    background: #c88917;

    transform:
        translateY(-50%)
        scale(1.08);
}


.slider-arrow-prev {
    left: 25px;
}


.slider-arrow-next {
    right: 25px;
}


.slider-arrow i {
    font-size: 12px;
}


/* =========================================
   INDICATORS
========================================= */

.slider-indicators {
    position: absolute;

    z-index: 20;

    bottom: 22px;

    left: 50%;

    display: flex;

    align-items: center;

    gap: 8px;

    transform: translateX(-50%);
}


.slider-indicator {
    width: 28px;
    height: 3px;

    padding: 0;

    border: none;

    background: rgba(9, 37, 92, 0.35);

    cursor: pointer;

    transition:
        width 0.3s ease,
        background 0.3s ease;
}


.slider-indicator-active {
    width: 45px;

    background: #c88917;
}


/* =========================================
   TABLET
   992px - 1199px
========================================= */

@media (max-width: 1199px) {

    .slider-wrapper,
    .slider-slide,
    .slider-content,
    .slider-image-wrapper {
        min-height: 470px;
    }


    .slider-content {
        padding-left: 55px;
        padding-right: 20px;
    }


    .slider-title {
        font-size: clamp(40px, 4.5vw, 58px);
        padding-bottom:20px;
    }


    .slider-description {
        max-width: 400px;

        font-size: 13px;
    }


    .slider-blue-shape {
        left: -75px;

        width: 125px;
    }


    .slider-arrow-prev {
        left: 15px;
    }


    .slider-arrow-next {
        right: 15px;
    }

}


/* =========================================
   TABLET
   768px - 991px
========================================= */

@media (max-width: 991px) {

    .slider-wrapper,
    .slider-slide,
    .slider-content,
    .slider-image-wrapper {
        min-height: 440px;
    }


    .slider-content {
        width: 46%;

        padding:
            55px
            15px
            55px
            40px;
    }


    .slider-image-wrapper {
        width: 54%;
    }


    .slider-small-title {
        font-size: 11px;

        letter-spacing: 1px;
    }


    .slider-title {
        font-size: clamp(34px, 5vw, 47px);

        letter-spacing: -0.5px;
    }


    .slider-description {
        max-width: 350px;

        font-size: 12px;

        line-height: 1.6;
    }


    .slider-primary-button {
        min-height: 42px;

        padding: 0 17px;

        font-size: 15px;
    }


    .slider-video-icon {
        width: 38px;
        height: 38px;
    }


    .slider-blue-shape {
        left: -70px;

        width: 110px;

        border-right-width: 6px;
    }


    .slider-arrow {
        width: 36px;
        height: 36px;
    }


    .slider-arrow-prev {
        left: 10px;
    }


    .slider-arrow-next {
        right: 10px;
    }

}


/* =========================================
   MOBILE
   767px and below
========================================= */

@media (max-width: 767px) {

    .slider-wrapper {
        min-height: auto;
    }


    /* .slider-slide {
        position: relative;

        min-height: auto;

        display: flex;

        flex-direction: column;

        opacity: 0;

        visibility: hidden;

        transform: translateX(20px);
    }


    .slider-slide-active {
        opacity: 1;

        visibility: visible;

        transform: translateX(0);
    } */

    .slider-slide {
    position: absolute;
    top: 0;
    left: 0;
      display: flex;
    
    flex-wrap: wrap;
}

/* .slider-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-height: 500px;
    display: flex;
    opacity: 0;
    flex-wrap: wrap;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(30px);
    transition: opacity 0.8s ease,
        transform 0.8s ease,
        visibility 0.8s ease;
} */

.slider-slide-active {
    position: relative;
}


    /* CONTENT */

    .slider-content {
        order: 1;

        width: 100%;

        min-height: auto;

        padding:
            45px
            25px
            35px;

        text-align: left;
    }


    .slider-content::before {
        width: 200px;
        height: 200px;

        background-size: 30px 30px;
    }


    .slider-small-title {
        margin-bottom: 12px;

        font-size: 10px;
    }


    .slider-title {
        font-size: clamp(38px, 11vw, 55px);

        line-height: 0.98;
    }


    .slider-title-line {
        margin: 15px 0;
    }


    .slider-description {
        max-width: 100%;

        margin-bottom: 22px;

        font-size: 13px;

        line-height: 1.65;
    }


    /* IMAGE */

    .slider-image-wrapper {
        order: 2;

        width: 100%;

        min-height: 330px;

        height: 330px;
    }


    .slider-blue-shape {
        left: -60px;

        width: 100px;

        height: 110%;
    }


    .slider-gold-line {
        left: -5px;

        top: 15%;
    }


    .slider-arrow {
        width: 36px;
        height: 36px;

        top: auto;
        bottom: 355px;
    }


    .slider-arrow-prev {
        left: 15px;
    }


    .slider-arrow-next {
        right: 15px;
    }


    .slider-indicators {
        bottom: 15px;
    }


    .slider-buttons {
        gap: 18px;
    }

}


/* =========================================
   SMALL MOBILE
   480px and below
========================================= */

@media (max-width: 480px) {

    .slider-content {
        padding:
            35px
            18px
            30px;
    }


    .slider-small-title {
        font-size: 12px;
    }


    .slider-title {
        font-size: 38px;
    }


    .slider-description {
        font-size: 16px;
        line-height:1.3;
    }


    .slider-primary-button {
        width: 100%;
    }


    .slider-video-button {
        margin-top: 2px;
    }


    .slider-image-wrapper {
        min-height: 280px;

        height: 280px;
    }


    .slider-arrow {
        bottom: 238px;
    }


    .slider-arrow-prev {
        left: 10px;
    }


    .slider-arrow-next {
        right: 10px;
    }

}


/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    .slider-slide,
    .slider-image,
    .slider-primary-button,
    .slider-arrow {
        transition: none;
    }

}



/*----------------about us section code-----------*/


/* =========================================
   ABOUT US SECTION
========================================= */

.about-us-section {

    position: relative;

    width: 100%;

    overflow: hidden;

    padding: 60px 0 60px;

    background: #f5f5f5;

}


/* =========================================
   CONTAINER
========================================= */

.about-us-container {

    width: min(1180px, 90%);

    margin: 0 auto;

}


.about-us-wrapper {

    display: grid;

    grid-template-columns: 44% 56%;

    align-items: center;

    gap: 60px;

}


/* =========================================
   IMAGE AREA
========================================= */

.about-us-image-area {

    position: relative;

    min-height: 490px;

    display: flex;

    align-items: center;

    justify-content: center;

}


/* =========================================
   BLUE SHAPE
========================================= */

.about-us-blue-shape {

    position: absolute;

    left: -100px;

    bottom: -30px;

    width: 250px;

    height: 310px;

    background: #1598df;

    clip-path: polygon(
        0 28%,
        55% 0,
        100% 0,
        78% 100%,
        0 100%
    );

    z-index: 1;

}


/* =========================================
   IMAGE BORDER
========================================= */

.about-us-image-border {

    position: absolute;

    width: 82%;

    height: 82%;

    right: 5%;

    top: 8%;

    border: 2px solid #1598df;

    border-radius: 28px;

    transform: rotate(5deg);

    z-index: 1;

}


/* =========================================
   IMAGE WRAPPER
========================================= */

.about-us-image-wrapper {

    position: relative;

    z-index: 3;

    width: 88%;

    height: 430px;

    overflow: hidden;

    border-radius: 25px;

    transform: rotate(-3deg);

    box-shadow:
        0 20px 45px rgba(9, 37, 92, 0.16);

}


/* =========================================
   IMAGE
========================================= */

.about-us-image {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.6s ease;

}


.about-us-image-wrapper:hover
.about-us-image {

    transform: scale(1.06);

}


/* =========================================
   EXPERIENCE BADGE
========================================= */

.about-us-experience {

    position: absolute;

    z-index: 5;

    right: -5px;

    bottom: 45px;

    min-width: 185px;

    padding: 14px 20px;

    display: flex;

    align-items: center;

    gap: 14px;

    color: #ffffff;

    background: #09255c;

    border-radius: 8px;

    box-shadow:
        0 12px 30px rgba(9, 37, 92, 0.25);

}


.about-us-experience-icon {

    width: 48px;

    height: 48px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    color: #c88917;

    border: 1px solid rgba(200, 137, 23, 0.6);

    border-radius: 50%;

}


.about-us-experience-icon i {

    font-size: 19px;

}


.about-us-experience-content {

    display: flex;

    flex-direction: column;

}


.about-us-experience-content strong {

    font-size: 26px;

    line-height: 1;

    font-weight: 700;

}


.about-us-experience-content span {

    margin-top: 5px;

    color: #ffffff;

    font-size: 10px;

    line-height: 1.3;

    text-transform: uppercase;

    letter-spacing: 0.5px;

}


/* =========================================
   RIGHT CONTENT
========================================= */

.about-us-content {

    position: relative;

    padding-top: 10px;

}


/* =========================================
   SUBTITLE
========================================= */

.about-us-subtitle {

    display: block;

    margin-bottom: 12px;

    color: #c88917;

    font-size: 12px;

    font-weight: 600;

    letter-spacing: 1.4px;

    text-transform: uppercase;

}


/* =========================================
   TITLE
========================================= */

.about-us-title {

    max-width: 600px;

    margin: 0;

    color: #09255c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    /* font-size: clamp(38px, 4vw, 57px); */
    font-size:45px !important;

    line-height: 1.02;

    font-weight: 700;

    letter-spacing: -1px;
    padding-bottom:20px;

}


.about-us-title span {

    display: block;

    color: #168ed8;

}


/* =========================================
   TITLE LINE
========================================= */

.about-us-title-line {

    position: relative;

    width: 95px;

    height: 2px;

    margin: 20px 0 24px;

    background: #c88917;

}


.about-us-title-line::after {

    content: "";

    position: absolute;

    left: 0;

    top: 5px;

    width: 55px;

    height: 1px;

    background: #09255c;

}


/* =========================================
   DESCRIPTION
========================================= */

.about-us-description {

    max-width: 630px;

    margin: 0 0 13px;

    color: #34415a;

    font-size: 18px;

    line-height: 1.2;
    text-align:justify;

}


/* =========================================
   HIGHLIGHTS
========================================= */

.about-us-highlights {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 12px;

    margin-top: 25px;

}


.about-us-highlight {

    display: flex;

    align-items: center;

    gap: 9px;

}


.about-us-highlight-icon {

    width: 38px;

    height: 38px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    color: #168ed8;

    background: #eef8ff;

    border: 1px solid #b9e4fb;

    border-radius: 50%;

}


.about-us-highlight-icon i {

    font-size: 13px;

}


.about-us-highlight div:last-child {

    display: flex;

    flex-direction: column;

}


.about-us-highlight strong {

    color: #09255c;

    font-size: 17px;

    line-height: 1.3;

}


.about-us-highlight span {

    color: #59657a;

    font-size: 15px;

    line-height: 1.3;

}


/* =========================================
   PROPRIETOR
========================================= */

.about-us-proprietor {

    margin-top: 28px;

}


.about-us-signature {

    margin-bottom: 3px;

    color: #09255c;

    font-family:
        "Brush Script MT",
        "Segoe Script",
        cursive;

    font-size: 29px;

    font-style: italic;

}


.about-us-proprietor-name {

    display: flex;

    flex-direction: column;

}


.about-us-proprietor-name strong {

    color: #09255c;

    font-size: 11px;

    letter-spacing: 0.7px;

}


.about-us-proprietor-name span {

    margin-top: 2px;

    color: #687388;

    font-size: 10px;

}


/* =========================================
   BUTTON
========================================= */

.about-us-button {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    margin-top: 22px;

    padding-bottom: 10px;
    padding-top:10px;
    border-radius:5px;
    padding-left:10px;
    padding-right:10px;

    color: #ffffff;
    background-color:#09255c;

    text-decoration: none;

    border-bottom: 1px solid #c88917;

    font-size: 16px;

    font-weight: 700;

    letter-spacing: 0.5px;

    transition:
        color 0.3s ease;

}


.about-us-button i {

    transition:
        transform 0.3s ease;

}


.about-us-button:hover {

    color: #c88917;

}


.about-us-button:hover i {

    transform: translateX(5px);

}


/* =========================================
   DECORATIVE WAVE
========================================= */

.about-us-wave {

    position: absolute;

    right: 0;

    bottom: -1px;

    width: 55%;

    height: 145px;

    z-index: 0;

    pointer-events: none;

}


.about-us-wave svg {

    width: 100%;

    height: 100%;

    display: block;

}


.about-us-wave path {

    fill: rgba(22, 142, 216, 0.10);

}


/* =========================================
   LARGE TABLET
========================================= */

@media (max-width: 1199px) {

    .about-us-section {

        padding-top: 75px;

    }


    .about-us-wrapper {

        gap: 40px;

    }


    .about-us-image-area {

        min-height: 440px;

    }


    .about-us-image-wrapper {

        height: 390px;

    }


    .about-us-title {

        font-size: 45px;

    }


    .about-us-highlights {

        gap: 8px;

    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .about-us-section {

        padding: 65px 0 110px;

    }


    .about-us-container {

        width: 90%;

    }


    .about-us-wrapper {

        grid-template-columns: 43% 57%;

        gap: 30px;

    }


    .about-us-image-area {

        min-height: 390px;

    }


    .about-us-image-wrapper {

        width: 90%;

        height: 340px;

    }


    .about-us-image-border {

        width: 84%;

        height: 80%;

    }


    .about-us-blue-shape {

        left: -70px;

        width: 180px;

        height: 250px;

    }


    .about-us-experience {

        right: -10px;

        bottom: 25px;

        min-width: 155px;

        padding: 10px 14px;

    }


    .about-us-experience-icon {

        width: 40px;

        height: 40px;

    }


    .about-us-experience-content strong {

        font-size: 22px;

    }


    .about-us-title {

        font-size: 38px;

    }


    .about-us-description {

        font-size: 12px;

        line-height: 1.65;

    }


    .about-us-highlights {

        grid-template-columns:
            repeat(2, 1fr);

        row-gap: 14px;

    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .about-us-section {

        padding: 55px 0 100px;

    }


    .about-us-container {

        width: 90%;

    }


    .about-us-wrapper {

        display: flex;

        flex-direction: column;

        gap: 45px;

    }


    /* IMAGE */

    .about-us-image-area {

        width: 100%;

        min-height: 350px;

    }


    .about-us-image-wrapper {

        width: 88%;

        height: 320px;

        border-radius: 20px;

    }


    .about-us-image-border {

        width: 85%;

        height: 82%;

        right: 4%;

        top: 6%;

        border-radius: 22px;

    }


    .about-us-blue-shape {

        left: -60px;

        bottom: -25px;

        width: 150px;

        height: 220px;

    }


    .about-us-experience {

        right: 0;

        bottom: 5px;

        min-width: 155px;

    }


    /* CONTENT */

    .about-us-content {

        padding: 0;

    }


    .about-us-subtitle {

        font-size: 12px;

        letter-spacing: 1.1px;

    }


    .about-us-title {

        font-size: clamp(38px, 11vw, 52px);

        line-height: 1;

        letter-spacing: -0.5px;

    }


    .about-us-title-line {

        margin: 17px 0 20px;

    }


    .about-us-description {

        max-width: 100%;

        font-size: 13px;

        line-height: 1.7;

    }


    .about-us-highlights {

        grid-template-columns:
            repeat(2, 1fr);

        margin-top: 25px;

        gap: 18px 12px;

    }


    .about-us-highlight {

        gap: 8px;

    }


    .about-us-highlight-icon {

        width: 36px;

        height: 36px;

    }


    .about-us-signature {

        font-size: 27px;

    }


    .about-us-wave {

        width: 100%;

        height: 100px;

    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .about-us-section {

        padding: 30px 0 30px;

    }


    .about-us-image-area {

        min-height: 310px;

    }


    .about-us-image-wrapper {

        width: 90%;

        height: 285px;

    }


    .about-us-image-border {

        width: 88%;

        height: 82%;

    }


    .about-us-blue-shape {

        left: -50px;

        width: 125px;

        height: 190px;

    }


    .about-us-experience {

        min-width: 140px;

        padding: 9px 11px;

        gap: 9px;

    }


    .about-us-experience-icon {

        width: 35px;

        height: 35px;

    }


    .about-us-experience-content strong {

        font-size: 20px;

    }


    .about-us-experience-content span {

        font-size: 8px;

    }


    .about-us-title {

        font-size: 30px !important;

    }


    .about-us-description {

        font-size: 18px;
        line-height:1.3;
        text-align:justify;

    }


    .about-us-highlight-icon {

        width: 34px;

        height: 34px;

    }


    .about-us-highlight strong {

        font-size: 18px;

    }


    .about-us-highlight span {

        font-size: 16px;

    }

}


/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    .about-us-image,
    .about-us-button,
    .about-us-image-wrapper {

        transition: none;

    }

}




/*---------------services section code------------*/


/* =========================================
   SERVICES SECTION
========================================= */

.services-section {

    position: relative;

    width: 100%;

    padding: 60px 0 60px;

    background: #ffffff;

    overflow: hidden;
}


.services-container {

    width: min(1180px, 90%);

    margin: 0 auto;
}


/* =========================================
   HEADING
========================================= */

.services-heading {

    text-align: center;

    margin-bottom: 30px;
}


.services-subtitle {

    display: block;

    margin-bottom: 6px;

    color: #c88917;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;
}


.services-title {

    margin: 0;

    color: #09255c;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 45px;

    line-height: 1.1;

    font-weight: 700;
}


.services-heading-line {

    position: relative;

    width: 70px;

    height: 2px;

    margin: 12px auto 0;

    background: #c88917;
}


.services-heading-line::before {

    content: "";

    position: absolute;

    left: -20px;

    top: 0;

    width: 18px;

    height: 2px;

    background: #168ed8;
}


.services-heading-line::after {

    content: "";

    position: absolute;

    right: -20px;

    top: 0;

    width: 18px;

    height: 2px;

    background: #09255c;
}


/* =========================================
   SLIDER WRAPPER
========================================= */

.services-slider-wrapper {

    position: relative;

    width: 100%;

    padding: 0 42px;
}


/* =========================================
   SWIPER
========================================= */

.services-swiper {

    width: 100%;

    overflow: hidden;

    padding: 8px 0 12px;
}


.services-swiper .swiper-slide {

    height: auto;

    display: flex;
}


/* =========================================
   SERVICE CARD
========================================= */

.services-card {

    position: relative;

    width: 100%;

    min-height: 330px;

    background: #ffffff;

    border: 1px solid #e3e9f0;

    border-radius: 8px;

    overflow: hidden;

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}


.services-card:hover {

    transform: translateY(-5px);

    border-color: #168ed8;

    box-shadow:
        0 15px 35px rgba(9, 37, 92, 0.12);
}


/* =========================================
   IMAGE
========================================= */

.services-card-image {

    position: relative;

    width: 100%;

    height: 190px;

    overflow: hidden;

    background: #f3f7fa;
}


.services-card-image::after {

    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to bottom,
            transparent 55%,
            rgba(9, 37, 92, 0.12)
        );
}


.services-card-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.5s ease;
}


.services-card:hover
.services-card-image img {

    transform: scale(1.06);
}


/* =========================================
   CONTENT
========================================= */

.services-card-content {

    padding: 17px 16px 20px;
}


.services-card-icon {

    width: 31px;

    height: 31px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-bottom: 9px;

    color: #09255c;

    background: #edf7ff;

    border: 1px solid #c9e9fa;

    border-radius: 50%;
}


.services-card-icon i {

    font-size: 12px;
}


.services-card-content h3 {

    margin: 0 0 8px;

    color: #09255c;

    font-size: 17px;

    line-height: 1.3;

    font-weight: 700;
}


.services-card-content p {

    margin: 0;

    max-width: 170px;

    color: #6b7585;

    font-size: 17px;

    line-height: 1.2;
}


/* =========================================
   NUMBER
========================================= */

.services-card-number {

    position: absolute;

    right: 0;

    bottom: 0;

    z-index: 5;

    width: 48px;

    height: 34px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #ffffff;

    background: #09255c;

    font-size: 15px;

    font-weight: 700;
}


.services-card-number::before {

    content: "";

    position: absolute;

    left: -18px;

    bottom: 0;

    border-style: solid;

    border-width:
        0
        18px
        34px
        0;

    border-color:
        transparent
        #09255c
        transparent
        transparent;
}


/* =========================================
   SLIDER ARROWS
========================================= */

.services-slider-prev,
.services-slider-next {

    position: absolute;

    top: 50%;

    z-index: 20;

    width: 36px;

    height: 36px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-top: -18px;

    border: 1px solid #d8e0e9;

    border-radius: 50%;

    color: #09255c;

    background: #ffffff;

    cursor: pointer;

    box-shadow:
        0 5px 15px rgba(9, 37, 92, 0.08);

    transition:
        all 0.3s ease;
}


.services-slider-prev {

    left: 0;
}


.services-slider-next {

    right: 0;
}


.services-slider-prev i,
.services-slider-next i {

    font-size: 11px;
}


.services-slider-prev:hover,
.services-slider-next:hover {

    color: #ffffff;

    background: #09255c;

    border-color: #09255c;
}


/* =========================================
   PAGINATION
========================================= */

.services-pagination {

    position: relative;

    display: flex;

    justify-content: center;

    margin-top: 12px;
    padding-top:30px;
}


.services-pagination
.swiper-pagination-bullet {

    width: 6px;

    height: 6px;

    margin: 0 3px !important;

    background: #b9c4d1;

    opacity: 1;
}


.services-pagination
.swiper-pagination-bullet-active {

    width: 20px;

    border-radius: 5px;

    background: #09255c;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .services-section {

        padding: 55px 0 65px;
    }


    .services-container {

        width: 88%;
    }


    .services-slider-wrapper {

        padding: 0 35px;
    }


    .services-title {

        font-size: 32px;
    }


    .services-card {

        min-height: 315px;
    }


    .services-card-image {

        height: 175px;
    }


    .services-card-content {

        padding: 15px;
    }


    .services-card-content h3 {

        font-size: 10px;
    }


    .services-card-content p {

        font-size: 8.5px;
    }


    .services-slider-prev,
    .services-slider-next {

        width: 32px;

        height: 32px;

        margin-top: -16px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .services-section {

        padding: 50px 0 55px;
    }


    .services-container {

        width: 88%;
    }


    .services-heading {

        margin-bottom: 25px;
    }


    .services-subtitle {

        font-size: 12px;
    }


    .services-title {

        font-size: 29px;
    }


    .services-heading-line {

        margin-top: 10px;
    }


    .services-slider-wrapper {

        padding: 0 32px;
    }


    .services-swiper {

        padding-top: 5px;

        padding-bottom: 8px;
    }


    .services-card {

        min-height: 320px;
    }


    .services-card-image {

        height: 190px;
    }


    .services-card-content {

        padding: 17px 16px 20px;
    }


    .services-card-icon {

        width: 34px;

        height: 34px;
    }


    .services-card-icon i {

        font-size: 12px;
    }


    .services-card-content h3 {

        font-size: 11px;
    }


    .services-card-content p {

        max-width: 210px;

        font-size: 9px;
    }


    .services-slider-prev,
    .services-slider-next {

        width: 30px;

        height: 30px;

        margin-top: -15px;
    }


    .services-slider-prev {

        left: -2px;
    }


    .services-slider-next {

        right: -2px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .services-section {

        padding: 30px 0 30px;
    }


    .services-container {

        width: 86%;
    }


    .services-slider-wrapper {

        padding: 0 29px;
    }


    .services-title {

        font-size: 30px;
    }


    .services-card {

        min-height: 310px;
    }


    .services-card-image {

        height: 180px;
    }


    .services-card-content {

        padding: 15px;
    }


    .services-card-content h3 {

        font-size: 17px;
    }


    .services-card-content p {

        font-size: 18px;

        line-height: 1.3;
    }


    .services-card-number {

        width: 44px;

        height: 31px;

        font-size: 9px;
    }


    .services-card-number::before {

        left: -16px;

        border-width:
            0
            16px
            31px
            0;
    }

}



/*---------------projects section code----------*/


/* =========================================
   RECENT PROJECTS
========================================= */

.vaads-projects-section {
    width: 100%;
    padding: 60px 0 60px;
    background: #E2F4FF;
    overflow: hidden;
}


.vaads-projects-container {
    width: min(1400px, 92%);
    margin: 0 auto;
}


/* =========================================
   HEADING
========================================= */

.vaads-projects-heading {
    text-align: center;
    margin-bottom: 38px;
}


.vaads-projects-subtitle {
    display: block;

    margin-bottom: 6px;

    color: #d99416;

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 1.6px;
}


.vaads-projects-title {
    margin: 0;

    color: #062b72;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 45px !important;

    font-weight: 700;

    line-height: 1.15;
}


.vaads-projects-title span {
    color: #0787df;
}


.vaads-projects-heading-line {
    width: 70px;
    height: 3px;

    margin: 13px auto 0;

    background:
        linear-gradient(
            90deg,
            #0787df,
            #d99416
        );
}


/* =========================================
   PROJECT GRID
========================================= */

.vaads-projects-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 18px;
}


/* =========================================
   PROJECT CARD
========================================= */

.vaads-project-card {
    position: relative;

    overflow: hidden;

    border-radius: 9px;

    background: #ffffff;

    cursor: pointer;
}


/* =========================================
   PROJECT IMAGE
========================================= */

.vaads-project-image {
    position: relative;

    width: 100%;
    height: 285px;

    overflow: hidden;

    background: #edf3f9;
}


.vaads-project-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 0.7s ease;
}


.vaads-project-card:hover
.vaads-project-image img {
    transform: scale(1.08);
}


/* =========================================
   IMAGE OVERLAY
========================================= */

.vaads-project-overlay {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    min-height: 135px;

    padding: 25px 18px 17px;

    background:
        linear-gradient(
            to top,
            rgba(3, 24, 62, 0.96),
            rgba(3, 24, 62, 0.60),
            rgba(3, 24, 62, 0)
        );

    color: #ffffff;
}


/* =========================================
   PROJECT TEXT
========================================= */

.vaads-project-content {
    min-width: 0;
}


.vaads-project-label {
    display: block;

    margin-bottom: 5px;

    color: #ffffff;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.7px;
}


.vaads-project-content h3 {
    margin: 0;

    color: #ffffff;

    font-size: 17px;
    font-weight: 700;

    letter-spacing: 0.3px;
}


/* =========================================
   PROJECT ARROW
========================================= */

.vaads-project-arrow {
    flex-shrink: 0;

    width: 39px;
    height: 39px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-left: 10px;

    border-radius: 50%;

    background: #d99416;

    color: #ffffff;

    text-decoration: none;

    opacity: 0;

    transform: translateY(10px);

    transition:
        opacity 0.3s ease,
        transform 0.3s ease,
        background 0.3s ease;
}


.vaads-project-card:hover
.vaads-project-arrow {
    opacity: 1;

    transform: translateY(0);
}


.vaads-project-arrow:hover {
    background: #0787df;
}


/* =========================================
   VIEW ALL
========================================= */

.vaads-projects-view-all {
    display: flex;
    justify-content: center;

    margin-top: 35px;
}


.vaads-projects-view-all a {
   
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 22px;
    padding-bottom: 10px;
    padding-top: 10px;
    border-radius: 5px;
    padding-left: 10px;
    padding-right: 10px;
    color: #ffffff;
    background-color: #09255c;
    text-decoration: none;
    border-bottom: 1px solid #c88917;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;

}


.vaads-projects-view-all a:hover {
    background: #062b72;
    color: #ffffff;
}


.vaads-projects-view-all i {
    font-size: 12px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .vaads-projects-section {
        padding: 65px 0 75px;
    }


    .vaads-projects-container {
        width: 90%;
    }


    .vaads-projects-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 18px;
    }


    .vaads-project-image {
        height: 280px;
    }


    .vaads-project-arrow {
        opacity: 1;
        transform: none;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 575px) {

    .vaads-projects-section {
        padding: 30px 0 30px;
    }


    .vaads-projects-container {
        width: 92%;
    }


    .vaads-projects-heading {
        margin-bottom: 27px;
    }


    .vaads-projects-subtitle {
        font-size: 12px;
        letter-spacing: 1.3px;
    }


    .vaads-projects-title {
        font-size: 30px !important;
    }


    .vaads-projects-grid {
        grid-template-columns: 1fr;

        gap: 16px;
    }


    .vaads-project-image {
        height: 260px;
    }


    .vaads-project-overlay {
        min-height: 125px;

        padding: 24px 15px 15px;
    }


    .vaads-project-label {
        font-size: 9px;
    }


    .vaads-project-content h3 {
        font-size: 15px;
    }


    .vaads-project-arrow {
        width: 35px;
        height: 35px;

        opacity: 1;
        transform: none;
    }


    .vaads-projects-view-all {
        margin-top: 0px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .vaads-project-image {
        height: 230px;
    }


    .vaads-projects-title {
        font-size: 25px;
    }

}



/*------------stats section code------------*/


/* =========================================
   STATS / ACHIEVEMENTS SECTION
========================================= */

.vaads-stats-section {
    width: 100%;
    padding: 60px 0 0px;

    background: #ffffff;
}


.vaads-stats-wrapper {

    width: min(1400px, 92%);
    min-height: 115px;

    margin: 0 auto;

    padding: 20px 45px;

    display: flex;
    align-items: center;

    background: #062b72;

    border-radius: 35px;

    box-shadow:
        0 15px 35px rgba(6, 43, 114, 0.15);
}


/* =========================================
   STAT ITEM
========================================= */

.vaads-stat-item {

    flex: 1;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 18px;

    min-width: 0;
}


/* =========================================
   ICON
========================================= */

.vaads-stat-icon {

    width: 55px;
    height: 55px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #e0a323;

    font-size: 31px;
}


.vaads-stat-icon i {
    line-height: 1;
}


/* =========================================
   CONTENT
========================================= */

.vaads-stat-content {

    display: flex;
    flex-direction: column;

    justify-content: center;
}


.vaads-stat-number {

    display: block;

    color: #ffffff;

    font-size: 39px;
    font-weight: 700;

    line-height: 1;

    margin-bottom: 7px;
}


.vaads-stat-label {

    display: block;

    color: #ffffff;

    font-size: 18px;
    font-weight: 600;

    line-height: 1.35;

    letter-spacing: 0.5px;
}


/* =========================================
   DIVIDER
========================================= */

.vaads-stat-divider {

    width: 1px;
    height: 55px;

    flex-shrink: 0;

    background: rgba(255, 255, 255, 0.35);
}



/* =========================================
   MOBILE
========================================= */

@media (max-width: 575px) {

    .vaads-stats-section {

        padding: 30px 0 30px;
    }


    .vaads-stats-wrapper {

        width: 92%;

        min-height: auto;

        padding: 25px 15px;

        display: grid;

        grid-template-columns: 1fr 1fr;

        row-gap: 25px;

        column-gap: 0;

        border-radius: 24px;
    }


    .vaads-stat-item {

        justify-content: flex-start;

        gap: 9px;

        padding: 0 8px;
    }


    .vaads-stat-icon {

        width: 38px;
        height: 38px;

        font-size: 21px;
    }


    .vaads-stat-number {

        font-size: 22px;

        margin-bottom: 5px;
    }


    .vaads-stat-label {

        font-size: 16px;

        letter-spacing: 0.3px;
    }


    /* Hide desktop dividers */

    .vaads-stat-divider {
        display: none;
    }

}



/*------------------testimonails section code-------------*/



/* =========================================================
   VAADS TESTIMONIALS SECTION
========================================================= */

.vaads-testimonials-section {

    width: 100%;

    padding: 85px 0 80px;

    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7faff 100%
        );

    overflow: hidden;

}


.vaads-testimonials-container {

    width: min(1400px, 92%);

    margin: 0 auto;

}


/* =========================================================
   HEADING
========================================================= */

.vaads-testimonials-heading {

    text-align: center;

    margin-bottom: 55px;

}


.vaads-testimonials-subtitle {

    display: block;

    margin-bottom: 10px;

    color: #d99516;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;

}


.vaads-testimonials-title {

    margin: 0;

    color: #082b70;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(34px, 4vw, 50px);

    font-weight: 700;

    line-height: 1.1;

}


.vaads-testimonials-title span {

    color: #159ce5;

}


.vaads-testimonials-heading-line {

    position: relative;

    width: 92px;

    height: 3px;

    margin: 18px auto;

    background: #d99516;

}


.vaads-testimonials-heading-line span {

    position: absolute;

    left: 50%;

    top: 50%;

    width: 18px;

    height: 18px;

    transform:
        translate(-50%, -50%);

    background: #ffffff;

    border: 3px solid #d99516;

    border-radius: 50%;

}


.vaads-testimonials-description {

    max-width: 700px;

    margin: 0 auto;

    color: #64748b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;

    line-height: 1.7;

}


/* =========================================================
   SLIDER
========================================================= */

.vaads-testimonials-slider {

    position: relative;

    display: flex;

    align-items: center;

    width: 100%;

}


.vaads-testimonials-viewport {

    width: 100%;

    overflow: hidden;

}


.vaads-testimonials-track {

    display: flex;

    gap: 28px;

    transition:
        transform 0.75s cubic-bezier(
            0.4,
            0,
            0.2,
            1
        );

    will-change: transform;

}


/* =========================================================
   TESTIMONIAL CARD
========================================================= */

.vaads-testimonials-card {

    position: relative;

    flex: 0 0
        calc((100% - 56px) / 3);

    min-height: 340px;

    padding: 40px 36px 30px;

    background: #ffffff;

    border: 1px solid #e0e8f2;

    box-shadow:
        0 15px 40px
        rgba(8, 43, 112, 0.07);

    overflow: hidden;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;

}


/* TOP COLOR LINE */

.vaads-testimonials-card::before {

    content: "";

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 4px;

    background:
        linear-gradient(
            90deg,
            #082b70 0%,
            #159ce5 50%,
            #d99516 100%
        );

}


.vaads-testimonials-card:hover {

    transform:
        translateY(-6px);

    box-shadow:
        0 22px 50px
        rgba(8, 43, 112, 0.12);

}


/* =========================================================
   CARD TOP
========================================================= */

.vaads-testimonials-card-top {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 28px;

}


.vaads-testimonials-quote {

    width: 54px;

    height: 54px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    color: #082b70;

    background: #edf7ff;

    border-radius: 50%;

    font-size: 21px;

}


.vaads-testimonials-stars {

    display: flex;

    align-items: center;

    gap: 4px;

    color: #d99516;

    font-size: 13px;

}


/* =========================================================
   TESTIMONIAL TEXT
========================================================= */

.vaads-testimonials-text {

    min-height: 105px;

    margin: 0 0 28px;

    color: #43546b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;

    line-height: 1.8;

}


/* =========================================================
   CLIENT INFORMATION
========================================================= */

.vaads-testimonials-client {

    display: flex;

    align-items: center;

    gap: 15px;

    padding-top: 20px;

    border-top:
        1px solid #e5ebf2;

}


.vaads-testimonials-client-icon {

    width: 50px;

    height: 50px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    color: #ffffff;

    background: #082b70;

    border-radius: 50%;

    font-size: 17px;

}


.vaads-testimonials-client-info h3 {

    margin: 0 0 5px;

    color: #082b70;

    font-size: 15px;

    font-weight: 700;

}


.vaads-testimonials-client-info span {

    color: #7b8798;

    font-size: 12px;

}


/* =========================================================
   PREVIOUS / NEXT BUTTON
========================================================= */

.vaads-testimonials-prev,
.vaads-testimonials-next {

    position: absolute;

    top: 50%;

    width: 54px;

    height: 54px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #082b70;

    background: #ffffff;

    border: 1px solid #d7e2ee;

    border-radius: 50%;

    cursor: pointer;

    transform:
        translateY(-50%);

    transition:
        all 0.3s ease;

    z-index: 10;

}


.vaads-testimonials-prev {

    left: -75px;

}


.vaads-testimonials-next {

    right: -75px;

}


.vaads-testimonials-prev:hover,
.vaads-testimonials-next:hover {

    color: #ffffff;

    background: #082b70;

    border-color: #082b70;

    box-shadow:
        0 8px 20px
        rgba(8, 43, 112, 0.20);

}


/* =========================================================
   DOTS
========================================================= */

.vaads-testimonials-dots {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    margin-top: 38px;

}


.vaads-testimonials-dot {

    width: 9px;

    height: 9px;

    padding: 0;

    border: 0;

    border-radius: 50%;

    background: #cbd7e5;

    cursor: pointer;

    transition:
        all 0.3s ease;

}


.vaads-testimonials-dot-active {

    width: 32px;

    border-radius: 10px;

    background: #d99516;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1200px) {

    .vaads-testimonials-prev {

        left: 10px;

    }


    .vaads-testimonials-next {

        right: 10px;

    }

}


@media (max-width: 991px) {

    .vaads-testimonials-section {

        padding:
            70px 0;

    }


    .vaads-testimonials-container {

        width: 90%;

    }


    .vaads-testimonials-heading {

        margin-bottom: 45px;

    }


    .vaads-testimonials-title {

        font-size: 40px;

    }


    .vaads-testimonials-card {

        flex: 0 0
            calc((100% - 28px) / 2);

        min-height: 320px;

        padding:
            32px 27px;

    }


    .vaads-testimonials-track {

        gap: 28px;

    }


    .vaads-testimonials-prev,
    .vaads-testimonials-next {

        width: 46px;

        height: 46px;

    }


    .vaads-testimonials-prev {

        left: -23px;

    }


    .vaads-testimonials-next {

        right: -23px;

    }


    .vaads-testimonials-text {

        font-size: 14px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .vaads-testimonials-section {

        padding:
            60px 0;

    }


    .vaads-testimonials-container {

        width: 86%;

    }


    .vaads-testimonials-heading {

        margin-bottom: 35px;

    }


    .vaads-testimonials-subtitle {

        font-size: 10px;

        letter-spacing: 1.5px;

    }


    .vaads-testimonials-title {

        font-size: 31px;

    }


    .vaads-testimonials-description {

        font-size: 13px;

        line-height: 1.6;

    }


    .vaads-testimonials-card {

        flex: 0 0 100%;

        min-height: 315px;

        padding:
            30px 22px;

    }


    .vaads-testimonials-track {

        gap: 20px;

    }


    .vaads-testimonials-card-top {

        margin-bottom: 24px;

    }


    .vaads-testimonials-quote {

        width: 48px;

        height: 48px;

        font-size: 18px;

    }


    .vaads-testimonials-stars {

        font-size: 11px;

    }


    .vaads-testimonials-text {

        min-height: auto;

        margin-bottom: 25px;

        font-size: 14px;

        line-height: 1.7;

    }


    .vaads-testimonials-client-icon {

        width: 46px;

        height: 46px;

    }


    .vaads-testimonials-prev,
    .vaads-testimonials-next {

        width: 38px;

        height: 38px;

        font-size: 12px;

    }


    .vaads-testimonials-prev {

        left: -19px;

    }


    .vaads-testimonials-next {

        right: -19px;

    }


    .vaads-testimonials-dots {

        margin-top: 28px;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .vaads-testimonials-container {

        width: 84%;

    }


    .vaads-testimonials-title {

        font-size: 27px;

    }


    .vaads-testimonials-card {

        padding:
            28px 19px;

    }


    .vaads-testimonials-stars {

        gap: 2px;

    }

}




/*--------------------vision mission code----------*/




/* =========================================================
   VISION & MISSION SECTION
========================================================= */

.vaads-vision-mission-section {

    width: 100%;

    overflow: hidden;

}


.vaads-vision-mission-wrapper {

    display: grid;

    grid-template-columns: 1fr 1fr;

    width: 100%;

}


/* =========================================================
   COMMON BLOCK
========================================================= */

.vaads-vision-mission-block {

    position: relative;

    min-height: 300px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding:
        55px
        clamp(40px, 6vw, 100px);

    overflow: hidden;

}


.vaads-vision-block {

    color: #ffffff;

    background:
        linear-gradient(
            120deg,
            #061f55 0%,
            #082d72 70%,
            #063b88 100%
        );

}


.vaads-mission-block {

    color: #082b70;

    background:
        linear-gradient(
            120deg,
            #e9f7ff 0%,
            #d9efff 100%
        );

}


/* =========================================================
   DECORATIVE SHAPES
========================================================= */

.vaads-vision-block::before {

    content: "";

    position: absolute;

    width: 260px;

    height: 260px;

    right: -100px;

    top: -100px;

    border: 1px solid
        rgba(255, 255, 255, 0.12);

    border-radius: 50%;

}


.vaads-vision-block::after {

    content: "";

    position: absolute;

    width: 360px;

    height: 360px;

    right: -160px;

    top: -150px;

    border: 1px solid
        rgba(255, 255, 255, 0.08);

    border-radius: 50%;

}


.vaads-mission-block::before {

    content: "";

    position: absolute;

    width: 320px;

    height: 320px;

    right: -120px;

    bottom: -190px;

    border: 1px solid
        rgba(21, 156, 229, 0.15);

    border-radius: 50%;

}


/* =========================================================
   CONTENT
========================================================= */

.vaads-vision-mission-content {

    position: relative;

    z-index: 2;

    max-width: 560px;

}


.vaads-vision-mission-label {

    display: block;

    margin-bottom: 12px;

    color: #d99516;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;

}


.vaads-mission-block
.vaads-vision-mission-label {

    color: #d99516;

}


.vaads-vision-mission-title {

    margin: 0 0 18px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(
        28px,
        3vw,
        42px
    );

    font-weight: 700;

    line-height: 1.15;

}


.vaads-vision-mission-title span {

    display: block;

    color: #159ce5;

}


.vaads-vision-block
.vaads-vision-mission-title span {

    color: #d99516;

}


.vaads-vision-mission-text {

    max-width: 500px;

    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 15px;

    line-height: 1.8;

}


.vaads-vision-block
.vaads-vision-mission-text {

    color:
        rgba(255, 255, 255, 0.85);

}


.vaads-mission-block
.vaads-vision-mission-text {

    color: #405a78;

}


/* =========================================================
   VISION GRAPHIC
========================================================= */

.vaads-vision-mission-graphic {

    position: relative;

    width: 210px;

    height: 210px;

    flex-shrink: 0;

    margin-left: 25px;

}


.vaads-vision-circle {

    position: absolute;

    left: 50%;

    top: 50%;

    width: 115px;

    height: 115px;

    display: flex;

    align-items: center;

    justify-content: center;

    transform:
        translate(-50%, -50%);

    border:
        2px solid
        rgba(217, 149, 22, 0.65);

    border-radius: 50%;

    color: #d99516;

    font-size: 42px;

}


.vaads-vision-circle::before {

    content: "";

    position: absolute;

    width: 155px;

    height: 155px;

    border:
        1px solid
        rgba(217, 149, 22, 0.35);

    border-radius: 50%;

}


.vaads-vision-circle::after {

    content: "";

    position: absolute;

    width: 190px;

    height: 190px;

    border:
        1px dashed
        rgba(255, 255, 255, 0.18);

    border-radius: 50%;

}


.vaads-vision-arrow {

    position: absolute;

    display: flex;

    align-items: center;

    justify-content: center;

    width: 42px;

    height: 42px;

    color: #d99516;

    font-size: 15px;

}


.vaads-vision-arrow-one {

    top: 15px;

    right: 5px;

    transform: rotate(-25deg);

}


.vaads-vision-arrow-two {

    bottom: 12px;

    left: 8px;

    transform: rotate(145deg);

}


.vaads-vision-target-dot {

    position: absolute;

    width: 9px;

    height: 9px;

    top: 26px;

    left: 42px;

    background: #d99516;

    border-radius: 50%;

}


/* =========================================================
   MISSION GRAPHIC
========================================================= */

.vaads-mission-graphic {

    position: relative;

    width: 240px;

    height: 190px;

    flex-shrink: 0;

    margin-left: 25px;

}


.vaads-mission-mountain {

    position: absolute;

    left: 10px;

    bottom: 20px;

    width: 220px;

    height: 130px;

}


.vaads-mountain-left {

    position: absolute;

    left: 0;

    bottom: 0;

    width: 0;

    height: 0;

    border-left:
        65px solid transparent;

    border-right:
        65px solid transparent;

    border-bottom:
        105px solid
        rgba(21, 156, 229, 0.18);

}


.vaads-mountain-center {

    position: absolute;

    left: 45px;

    bottom: 0;

    width: 0;

    height: 0;

    border-left:
        70px solid transparent;

    border-right:
        70px solid transparent;

    border-bottom:
        125px solid
        rgba(21, 156, 229, 0.25);

}


.vaads-mountain-right {

    position: absolute;

    right: 0;

    bottom: 0;

    width: 0;

    height: 0;

    border-left:
        65px solid transparent;

    border-right:
        65px solid transparent;

    border-bottom:
        90px solid
        rgba(21, 156, 229, 0.15);

}


/* Mountain line effect */

.vaads-mission-mountain::after {

    content: "";

    position: absolute;

    left: 20px;

    bottom: 0;

    width: 180px;

    height: 80px;

    border-top:
        2px solid
        rgba(21, 156, 229, 0.6);

    transform:
        skewX(-25deg)
        rotate(-15deg);

}


/* FLAG */

.vaads-mission-flag {

    position: absolute;

    top: 18px;

    right: 38px;

    color: #159ce5;

    font-size: 36px;

}


.vaads-mission-flag::before {

    content: "";

    position: absolute;

    left: -4px;

    top: 30px;

    width: 2px;

    height: 95px;

    background:
        rgba(21, 156, 229, 0.45);

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {

    .vaads-vision-mission-block {

        padding:
            45px 35px;

    }


    .vaads-vision-mission-graphic {

        width: 160px;

        height: 180px;

        margin-left: 10px;

    }


    .vaads-mission-graphic {

        width: 180px;

        height: 160px;

        margin-left: 10px;

    }


    .vaads-vision-circle {

        width: 90px;

        height: 90px;

        font-size: 32px;

    }


    .vaads-vision-circle::before {

        width: 125px;

        height: 125px;

    }


    .vaads-vision-circle::after {

        width: 155px;

        height: 155px;

    }


    .vaads-vision-mission-title {

        font-size: 30px;

    }


    .vaads-vision-mission-text {

        font-size: 14px;

    }

}


/* =========================================================
   TABLET PORTRAIT
========================================================= */

@media (max-width: 850px) {

    .vaads-vision-mission-wrapper {

        grid-template-columns: 1fr;

    }


    .vaads-vision-mission-block {

        min-height: 280px;

        padding:
            50px 8%;

    }


    .vaads-vision-mission-content {

        max-width: 60%;

    }


    .vaads-vision-mission-graphic {

        width: 190px;

        height: 190px;

    }


    .vaads-mission-graphic {

        width: 200px;

        height: 180px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .vaads-vision-mission-block {

        min-height: auto;

        display: block;

        padding:
            50px 25px 35px;

    }


    .vaads-vision-mission-content {

        max-width: 100%;

    }


    .vaads-vision-mission-label {

        font-size: 11px;

        letter-spacing: 1.5px;

    }


    .vaads-vision-mission-title {

        font-size: 30px;

        line-height: 1.2;

        margin-bottom: 15px;

    }


    .vaads-vision-mission-text {

        font-size: 14px;

        line-height: 1.7;

    }


    .vaads-vision-mission-graphic {

        width: 170px;

        height: 170px;

        margin:
            25px auto 0;

    }


    .vaads-mission-graphic {

        width: 190px;

        height: 160px;

        margin:
            25px auto 0;

    }


    .vaads-vision-circle {

        width: 90px;

        height: 90px;

        font-size: 30px;

    }


    .vaads-vision-circle::before {

        width: 120px;

        height: 120px;

    }


    .vaads-vision-circle::after {

        width: 150px;

        height: 150px;

    }


    .vaads-mountain-left {

        border-left-width: 50px;

        border-right-width: 50px;

        border-bottom-width: 85px;

    }


    .vaads-mountain-center {

        left: 38px;

        border-left-width: 55px;

        border-right-width: 55px;

        border-bottom-width: 105px;

    }


    .vaads-mountain-right {

        border-left-width: 50px;

        border-right-width: 50px;

        border-bottom-width: 75px;

    }


    .vaads-mission-flag {

        right: 20px;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .vaads-vision-mission-block {

        padding:
            42px 20px 30px;

    }


    .vaads-vision-mission-title {

        font-size: 26px;

    }


    .vaads-vision-mission-text {

        font-size: 13px;

    }

}


/* =========================================================
   VAADS CONSTRUCTION FOOTER
========================================================= */

.footer-section {

    width: 100%;

    position: relative;

    overflow: hidden;

    background: #061b4f;

    color: #ffffff;

}


/* =========================================================
   COMMON CONTAINER
========================================================= */

.footer-container {

    width: min(1200px, 92%);

    margin: 0 auto;

}


/* =========================================================
   FOOTER CTA
========================================================= */

.footer-cta {

    position: relative;

    padding: 55px 0;

    background:
        linear-gradient(
            115deg,
            #061b4f 0%,
            #092c73 65%,
            #06225d 100%
        );

    border-bottom:
        1px solid
        rgba(255, 255, 255, 0.12);

    overflow: hidden;

}


/* Decorative blueprint lines */

.footer-cta::before {

    content: "";

    position: absolute;

    width: 420px;

    height: 420px;

    right: -120px;

    top: -220px;

    border:
        1px solid
        rgba(255, 255, 255, 0.08);

    border-radius: 50%;

}


.footer-cta::after {

    content: "";

    position: absolute;

    width: 300px;

    height: 300px;

    left: -180px;

    bottom: -220px;

    border:
        1px solid
        rgba(30, 166, 230, 0.35);

    border-radius: 50%;

}


/* CTA wrapper */

.footer-cta-wrapper {

    position: relative;

    z-index: 2;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 40px;

}


/* CTA label */

.footer-cta-label {

    display: block;

    margin-bottom: 8px;

    color: #d99a18;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 2px;

}


/* CTA title */

.footer-cta-title {

    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(
        27px,
        3vw,
        42px
    );

    line-height: 1.15;

    font-weight: 700;

    color: #ffffff;

}


.footer-cta-title span {

    display: block;

    color: #d99a18;

}


/* CTA Button */

.footer-cta-button {

    min-width: 175px;

    min-height: 54px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 15px;

    padding: 14px 24px;

    background: #d99a18;

    color: #ffffff;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 0.5px;

    border-radius: 7px;

    transition:
        background 0.3s ease,
        transform 0.3s ease;

}


.footer-cta-button:hover {

    background: #e7a922;

    transform:
        translateY(-3px);

}


.footer-cta-button i {

    font-size: 13px;

}


/* =========================================================
   MAIN FOOTER
========================================================= */

.footer-main {

    position: relative;

    padding: 65px 0 50px;

    background: #071735;

}


/* subtle blueprint pattern */

.footer-main::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    opacity: 0.35;

    background-image:
        linear-gradient(
            rgba(255,255,255,0.025) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,0.025) 1px,
            transparent 1px
        );

    background-size:
        55px 55px;

}


/* =========================================================
   FOOTER GRID
========================================================= */

.footer-grid {

    position: relative;

    z-index: 2;

    display: grid;

    grid-template-columns:
        1.4fr
        0.8fr
        1fr
        1.35fr;

    gap: 60px;

}


/* =========================================================
   LOGO
========================================================= */

.footer-logo {

    display: inline-block;

    margin-bottom: 20px;

}


.footer-logo img {

    display: block;

    width: 175px;

    height: auto;

    object-fit: contain;

}


/* =========================================================
   COMPANY TEXT
========================================================= */

.footer-company-text {

    max-width: 300px;

    margin: 0 0 22px;

    color:
        rgba(255, 255, 255, 0.70);

    font-size: 18px;

    line-height: 1.2;

}


/* =========================================================
   SOCIAL ICONS
========================================================= */

.footer-social {

    display: flex;

    align-items: center;

    gap: 9px;

}


.footer-social a {

    width: 34px;

    height: 34px;

    display: flex;

    align-items: center;

    justify-content: center;

    border:
        1px solid
        rgba(255, 255, 255, 0.25);

    border-radius: 50%;

    color: #ffffff;

    text-decoration: none;

    font-size: 13px;

    transition:
        background 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease;

}


.footer-social a:hover {

    background: #d99a18;

    border-color: #d99a18;

    transform:
        translateY(-3px);

}


/* =========================================================
   COLUMN TITLE
========================================================= */

.footer-column-title {

    position: relative;

    margin: 5px 0 22px;

    padding-bottom: 12px;

    color: #ffffff;

    font-size: 14px;

    font-weight: 700;

    letter-spacing: 1px;

}


.footer-column-title::after {

    content: "";

    position: absolute;

    left: 0;

    bottom: 0;

    width: 32px;

    height: 2px;

    background: #d99a18;

}


/* =========================================================
   FOOTER LINKS
========================================================= */

.footer-links {

    margin: 0;

    padding: 0;

    list-style: none;

}


.footer-links li {

    margin-bottom: 11px;

}


.footer-links a {

    position: relative;

    color:
        rgba(255, 255, 255, 0.68);

    text-decoration: none;

    font-size: 18px;

    transition:
        color 0.3s ease,
        padding-left 0.3s ease;

}


.footer-links a::before {

    content: "→";

    position: absolute;

    left: -18px;

    opacity: 0;

    color: #d99a18;

    transition:
        opacity 0.3s ease;

}


.footer-links a:hover {

    padding-left: 18px;

    color: #ffffff;

}


.footer-links a:hover::before {

    opacity: 1;

}


/* =========================================================
   CONTACT
========================================================= */

.footer-contact-item {

    display: flex;

    align-items: flex-start;

    gap: 13px;

    margin-bottom: 20px;

}


.footer-contact-icon {

    width: 30px;

    height: 30px;

    flex-shrink: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #d99a18;

    font-size: 14px;

}


.footer-contact-content {

    display: flex;

    flex-direction: column;

    gap: 4px;

}


.footer-contact-content span,
.footer-contact-content a {

    color:
        rgba(255, 255, 255, 0.70);

    font-size: 18px;

    line-height: 1.2;

    text-decoration: none;

}


.footer-contact-content a {

    transition:
        color 0.3s ease;

}


.footer-contact-content a:hover {

    color: #d99a18;

}


/* =========================================================
   FOOTER BOTTOM
========================================================= */

.footer-bottom {

    background: #04132f;

    border-top:
        1px solid
        rgba(255, 255, 255, 0.12);

}


.footer-bottom-wrapper {

    min-height: 58px;

    display: flex;

    align-items: center;

    justify-content: center;

    /* gap: 20px; */

}


.footer-copyright,
.footer-credit {

    margin: 0;

    color:
        rgba(255, 255, 255, 0.55);

    font-size: 18px;

    line-height: 1.5;


}


.footer-credit i {

    margin-left: 5px;

    color: #d99a18;

}


/* =========================================================
   LARGE TABLET
========================================================= */

@media (max-width: 1100px) {

    .footer-grid {

        grid-template-columns:
            1.3fr
            0.8fr
            1fr;

        gap: 45px;

    }


    .footer-contact-column {

        grid-column: span 3;

    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 850px) {

    .footer-container {

        width: 90%;

    }


    .footer-cta {

        padding: 45px 0;

    }


    .footer-cta-wrapper {

        align-items: flex-start;

    }


    .footer-cta-title {

        font-size: 30px;

    }


    .footer-grid {

        grid-template-columns:
            1fr 1fr;

        gap: 45px 35px;

    }


    .footer-company {

        grid-column: span 2;

    }


    .footer-contact-column {

        grid-column: span 2;

    }


    .footer-company-text {

        max-width: 500px;

    }


    .footer-bottom-wrapper {

        min-height: auto;

        padding: 18px 0;

        flex-direction: column;

        align-items: center;

        text-align: center;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .footer-container {

        width: 90%;

    }


    /* CTA */

    .footer-cta {

        padding: 40px 0;

    }


    .footer-cta-wrapper {

        flex-direction: column;

        align-items: flex-start;

        gap: 25px;

    }


    .footer-cta-label {

        font-size: 10px;

        letter-spacing: 1.5px;

    }


    .footer-cta-title {

        font-size: 27px;

    }


    .footer-cta-button {

        min-width: 160px;

        min-height: 50px;

        font-size: 12px;

    }


    /* Main Footer */

    .footer-main {

        padding: 50px 0 35px;

    }


    .footer-grid {

        display: grid;

        grid-template-columns: 1fr;

        gap: 38px;

    }


    .footer-company,
    .footer-contact-column {

        grid-column: auto;

    }


    .footer-logo img {

        width: 155px;

    }


    .footer-company-text {

        max-width: 100%;

        font-size: 18px;

    }


    .footer-column-title {

        margin-bottom: 18px;

    }


    .footer-links a {

        font-size: 18px;

    }


    .footer-contact-content span,
    .footer-contact-content a {

        font-size: 18px;

    }


    /* Bottom */

    .footer-bottom-wrapper {

        padding: 16px 0;

        gap: 8px;

    }


    .footer-copyright,
    .footer-credit {

        font-size: 18px;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 400px) {

    .footer-cta-title {

        font-size: 24px;

    }


    .footer-social a {

        width: 32px;

        height: 32px;

    }


    .footer-contact-item {

        gap: 8px;

    }

}



/* =========================================================
   TESTIMONIAL SECTION
========================================================= */

.new-testimonial-section {
    width: 100%;
    padding: 55px 20px 45px;
    background: #ffffff;
    overflow: hidden;
}

.new-testimonial-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}


/* =========================================================
   HEADING
========================================================= */

.new-testimonial-heading {
    text-align: center;
    margin-bottom: 30px;
}

.new-testimonial-subtitle {
    display: block;
    margin-bottom: 6px;
    color: #e99b17;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.new-testimonial-title {
    margin: 0;
    color: #082b70;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 45px;
    font-weight: 700;
    line-height: 1.2;
    /* text-transform: uppercase; */
}

.new-testimonial-heading-line {
    width: 55px;
    height: 3px;
    margin: 10px auto 0;
    background: #e99b17;
}


/* =========================================================
   SLIDER
========================================================= */

.new-testimonial-slider {
    width: 100%;
    overflow: hidden;
    padding: 5px 2px 10px;
}

.new-testimonial-track {
    display: flex;
    gap: 20px;
    transition: transform 0.6s ease-in-out;
    will-change: transform;
}


/* =========================================================
   CARD
========================================================= */

.new-testimonial-card {
    position: relative;
    flex: 0 0 calc((100% - 40px) / 3);
    min-height: 185px;
    padding: 25px 25px 22px;
    background: #ffffff;
    border: 1px solid #e9edf5;
    border-radius: 14px;
    box-shadow: 0 4px 18px rgba(8, 43, 112, 0.06);
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.new-testimonial-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(8, 43, 112, 0.10);
}


/* =========================================================
   QUOTE
========================================================= */

.new-testimonial-quote {
    position: absolute;
    top: 12px;
    left: 18px;
    color: #0a3a8a;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 54px;
    font-weight: 700;
    line-height: 1;
}


/* =========================================================
   TEXT
========================================================= */

.new-testimonial-text {
    margin: 32px 0 20px;
    color: #333d4d;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.2;
}


/* =========================================================
   AUTHOR
========================================================= */

.new-testimonial-author {
    margin-top: auto;
}

.new-testimonial-name {
    margin: 0 0 4px;
    color: #082b70;
    font-size: 18px;
    font-weight: 700;
}

.new-testimonial-role {
    display: block;
    color: #6d7480;
    font-size: 11px;
    font-weight: 400;
}


/* =========================================================
   DOTS
========================================================= */

.new-testimonial-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin-top: 18px;
}

.new-testimonial-dot {
    width: 7px;
    height: 7px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #cbd3df;
    cursor: pointer;
    transition: all 0.3s ease;
}

.new-testimonial-dot-active {
    width: 18px;
    border-radius: 10px;
    background: #0a3a8a;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .new-testimonial-section {
        padding: 45px 18px 40px;
    }

    .new-testimonial-title {
        font-size: 27px;
    }

    .new-testimonial-card {
        flex: 0 0 calc((100% - 20px) / 2);
        min-height: 190px;
        padding: 23px 22px 20px;
    }

    .new-testimonial-text {
        font-size: 12.5px;
        line-height: 1.65;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .new-testimonial-section {
        padding: 40px 15px 35px;
    }

    .new-testimonial-heading {
        margin-bottom: 22px;
    }

    .new-testimonial-subtitle {
        font-size: 12px;
    }

    .new-testimonial-title {
        font-size: 24px;
    }

    .new-testimonial-heading-line {
        width: 45px;
        height: 2px;
    }

    .new-testimonial-slider {
        padding: 5px 2px 8px;
    }

    .new-testimonial-track {
        gap: 12px;
    }

    .new-testimonial-card {
        flex: 0 0 100%;
        min-height: 190px;
        padding: 22px 20px 20px;
        border-radius: 12px;
    }

    .new-testimonial-quote {
        top: 10px;
        left: 15px;
        font-size: 48px;
    }

    .new-testimonial-text {
        margin-top: 30px;
        margin-bottom: 18px;
        font-size: 12.5px;
        line-height: 1.7;
    }

    .new-testimonial-name {
        font-size: 18px;
    }

    .new-testimonial-role {
        font-size: 18px;
    }

    .new-testimonial-dots {
        margin-top: 14px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .new-testimonial-section {
        padding: 30px 12px 30px;
    }

    .new-testimonial-title {
        font-size: 21px;
    }

    .new-testimonial-card {
        min-height: 185px;
        padding: 20px 18px;
    }

    .new-testimonial-text {
        font-size: 18px;
        line-height: 1.3;
    }

}



/* =========================================================
   VISION & MISSION SECTION
========================================================= */

.new-vision-section {
    position: relative;
    width: 100%;
    padding: 60px 20px 60px;
    background: #f5f5f5;
    overflow: hidden;
    box-sizing: border-box;
}


/* =========================================================
   CONTAINER
========================================================= */

.new-vision-container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1450px;
    margin: 0 auto;
}


/* =========================================================
   BACKGROUND ARCHITECTURAL EFFECT
========================================================= */

.new-vision-bg-left,
.new-vision-bg-right {
    position: absolute;
    z-index: 0;
    width: 310px;
    height: 330px;
    opacity: 0.12;
    pointer-events: none;
}

.new-vision-bg-left {
    left: -70px;
    top: 70px;
    border: 1px solid #16458d;
    transform: perspective(500px) rotateY(18deg);
}

.new-vision-bg-left::before,
.new-vision-bg-left::after {
    content: "";
    position: absolute;
    border: 1px solid #16458d;
}

.new-vision-bg-left::before {
    width: 230px;
    height: 210px;
    left: 45px;
    top: 60px;
}

.new-vision-bg-left::after {
    width: 150px;
    height: 130px;
    left: 85px;
    top: 105px;
}


.new-vision-bg-right {
    right: -70px;
    top: 50px;
    border: 1px solid #16458d;
    transform: perspective(500px) rotateY(-18deg);
}

.new-vision-bg-right::before,
.new-vision-bg-right::after {
    content: "";
    position: absolute;
    border: 1px solid #16458d;
}

.new-vision-bg-right::before {
    width: 220px;
    height: 240px;
    right: 45px;
    top: 45px;
}

.new-vision-bg-right::after {
    width: 130px;
    height: 190px;
    right: 90px;
    top: 90px;
}


/* =========================================================
   HEADING
========================================================= */

.new-vision-heading {
    position: relative;
    z-index: 2;
    text-align: center;
    margin-bottom: 38px;
}

.new-vision-subtitle {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 20px;
    color: #d98a0b;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

/* .new-vision-subtitle::before,
.new-vision-subtitle::after {
    content: "";
    width: 60px;
    height: 1px;
    background: #e3a42c;
} */


.new-vision-main-title {
    margin: 20px 0 12px;
    color: #082d6b;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 45px;
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: 1px;
    /* text-transform: uppercase; */
}

.new-vision-main-title span {
    display: block;
    color: #168ed8;
}


.new-vision-heading-decoration {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin: 12px auto 15px;
}

.new-vision-heading-decoration span {
    width: 38px;
    height: 2px;
    background: #e39a1a;
}

.new-vision-heading-decoration i {
    color: #d88a0c;
    font-size: 17px;
}


.new-vision-intro {
    max-width: 730px;
    margin: 0 auto;
    color: #17294a;
    font-size: 18px;
    line-height: 1.2;
}


/* =========================================================
   VISION + MISSION CARDS
========================================================= */

.new-vision-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
    width: 100%;
}


/* =========================================================
   CARD
========================================================= */

.new-vision-card {
    position: relative;
    display: flex;
    min-height: 485px;
    overflow: hidden;
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 12px 35px rgba(20, 50, 90, 0.12);
}


/* =========================================================
   CARD IMAGE
========================================================= */

.new-vision-card-image {
    position: relative;
    flex: 0 0 48%;
    min-height: 485px;
    overflow: hidden;
}

.new-vision-card-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.new-vision-card:hover .new-vision-card-image img {
    transform: scale(1.05);
}


/* =========================================================
   ANGLED SECTION
========================================================= */

.new-vision-card-angle {
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 43%;
    width: 80px;
    transform: skewX(-13deg);
    transform-origin: center;
}


/* Vision blue */
.new-vision-card-vision {
    border: 2px solid #0756c7;
}

.new-vision-card-vision .new-vision-card-angle {
    background: #0756c7;
}


/* Mission gold */
.new-vision-card-mission {
    border: 2px solid #e19a16;
}

.new-vision-card-mission .new-vision-card-angle {
    background: #e19a16;
}


/* =========================================================
   CONTENT
========================================================= */

.new-vision-card-content {
    position: relative;
    z-index: 3;
    flex: 1;
    min-width: 0;
    padding: 40px 38px 35px 55px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    background: #ffffff;
    box-sizing: border-box;
}


/* =========================================================
   ICON
========================================================= */

.new-vision-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 105px;
    height: 105px;
    margin: 0 auto 17px;
    border-radius: 50%;
    font-size: 43px;
    box-sizing: border-box;
}

.new-vision-icon-blue {
    color: #ffffff;
    background: #0756c7;
    border: 8px solid #e9f0fb;
    box-shadow: 0 0 0 2px #b8cff0;
}

.new-vision-icon-gold {
    color: #ffffff;
    background: #d98b0b;
    border: 8px solid #fff4df;
    box-shadow: 0 0 0 2px #f1d39b;
}


/* =========================================================
   CARD TITLE
========================================================= */

.new-vision-card-title {
    margin: 0;
    color: #082d6b;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 29px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
}

.new-vision-card-mission .new-vision-card-title {
    color: #d88a0c;
}


/* =========================================================
   SMALL LINE
========================================================= */

.new-vision-small-line {
    position: relative;
    width: 60px;
    height: 2px;
    margin: 12px auto 20px;
    background: #0a58c8;
}

.new-vision-card-mission .new-vision-small-line {
    background: #d88a0c;
}

.new-vision-small-line::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: inherit;
    transform: translate(-50%, -50%);
}


/* =========================================================
   CARD TEXT
========================================================= */

.new-vision-card-text {
    max-width: 420px;
    margin: 0 auto;
    color: #202938;
    font-size: 16px;
    line-height: 1.75;
    text-align: left;
}


/* =========================================================
   BOTTOM ILLUSTRATION
========================================================= */

.new-vision-card-illustration {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    margin-top: auto;
    padding-top: 15px;
    min-height: 70px;
    color: #b9d2f5;
    font-size: 55px;
    opacity: 0.85;
}

.new-vision-card-mission .new-vision-card-illustration {
    color: #e8b85e;
}


/* =========================================================
   FEATURES
========================================================= */

.new-vision-features {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    margin-top: 28px;
    padding: 22px 25px;
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 8px 30px rgba(20, 50, 90, 0.10);
}


/* =========================================================
   FEATURE ITEM
========================================================= */

.new-vision-feature {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 0 25px;
    border-right: 1px solid #dce2ec;
}

.new-vision-feature:first-child {
    padding-left: 0;
}

.new-vision-feature:last-child {
    padding-right: 0;
    border-right: none;
}


/* =========================================================
   FEATURE ICON
========================================================= */

.new-vision-feature-icon {
    flex: 0 0 78px;
    width: 78px;
    height: 78px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #edf3fc;
    color: #0b4fa9;
    font-size: 32px;
}


/* =========================================================
   FEATURE CONTENT
========================================================= */

.new-vision-feature-content {
    flex: 1;
}

.new-vision-feature-content h4 {
    margin: 0;
    color: #082d6b;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.2;
    text-transform: uppercase;
}

.new-vision-feature-content h4 span {
    display: block;
}


.new-vision-feature-line {
    width: 35px;
    height: 2px;
    margin: 9px 0;
    background: #d98a0b;
}


.new-vision-feature-content p {
    margin: 0;
    color: #29344a;
    font-size: 13px;
    line-height: 1.55;
}


/* =========================================================
   LARGE TABLET
========================================================= */

@media (max-width: 1200px) {

    .new-vision-section {
        padding: 60px 20px 45px;
    }

    .new-vision-main-title {
        font-size: 50px;
    }

    .new-vision-card {
        min-height: 450px;
    }

    .new-vision-card-image {
        min-height: 450px;
    }

    .new-vision-card-content {
        padding: 32px 25px 28px 45px;
    }

    .new-vision-card-title {
        font-size: 26px;
    }

    .new-vision-card-text {
        font-size: 14px;
    }

    .new-vision-feature {
        padding: 0 15px;
        gap: 12px;
    }

    .new-vision-feature-icon {
        width: 65px;
        height: 65px;
        flex-basis: 65px;
        font-size: 27px;
    }

    .new-vision-feature-content h4 {
        font-size: 15px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .new-vision-section {
        padding: 50px 18px 40px;
    }

    .new-vision-subtitle {
        font-size: 14px;
        gap: 12px;
    }

    .new-vision-subtitle::before,
    .new-vision-subtitle::after {
        width: 40px;
    }

    .new-vision-main-title {
        font-size: 40px;
    }

    .new-vision-intro {
        max-width: 650px;
        font-size: 15px;
    }


    /* Cards */

    .new-vision-cards {
        gap: 20px;
    }

    .new-vision-card {
        min-height: 400px;
        border-radius: 16px;
    }

    .new-vision-card-image {
        flex-basis: 43%;
        min-height: 400px;
    }

    .new-vision-card-angle {
        left: 37%;
        width: 65px;
    }

    .new-vision-card-content {
        padding: 28px 18px 25px 38px;
    }

    .new-vision-icon {
        width: 75px;
        height: 75px;
        font-size: 30px;
        border-width: 6px;
    }

    .new-vision-card-title {
        font-size: 22px;
    }

    .new-vision-card-text {
        font-size: 13px;
        line-height: 1.6;
    }

    .new-vision-card-illustration {
        font-size: 40px;
    }


    /* Features */

    .new-vision-features {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px 0;
        padding: 22px;
    }

    .new-vision-feature {
        min-height: 80px;
    }

    .new-vision-feature:nth-child(2) {
        border-right: none;
    }

    .new-vision-feature:nth-child(3),
    .new-vision-feature:nth-child(4) {
        padding-top: 20px;
        border-top: 1px solid #dce2ec;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .new-vision-section {
        padding: 42px 14px 35px;
    }


    /* Background */

    .new-vision-bg-left,
    .new-vision-bg-right {
        width: 180px;
        height: 220px;
        opacity: 0.08;
    }

    .new-vision-bg-left {
        left: -100px;
    }

    .new-vision-bg-right {
        right: -100px;
    }


    /* Heading */

    .new-vision-heading {
        margin-bottom: 28px;
    }

    .new-vision-subtitle {
        font-size: 11px;
        gap: 8px;
    }

    .new-vision-subtitle::before,
    .new-vision-subtitle::after {
        width: 25px;
    }

    .new-vision-main-title {
        margin-top: 15px;
        font-size: 31px;
        line-height: 1.12;
        letter-spacing: 0.5px;
    }

    .new-vision-heading-decoration {
        margin-top: 10px;
    }

    .new-vision-intro {
        padding: 0 10px;
        font-size: 13px;
        line-height: 1.6;
    }


    /* Cards */

    .new-vision-cards {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .new-vision-card {
        display: flex;
        flex-direction: column;
        min-height: auto;
        border-radius: 15px;
    }

    .new-vision-card-image {
        flex: none;
        width: 100%;
        height: 220px;
        min-height: 220px;
    }

    .new-vision-card-angle {
        display: none;
    }

    .new-vision-card-content {
        padding: 28px 22px 25px;
    }

    .new-vision-icon {
        width: 78px;
        height: 78px;
        margin-bottom: 14px;
        font-size: 31px;
    }

    .new-vision-card-title {
        font-size: 24px;
    }

    .new-vision-small-line {
        margin-bottom: 15px;
    }

    .new-vision-card-text {
        max-width: 100%;
        font-size: 13px;
        line-height: 1.7;
        text-align: center;
    }

    .new-vision-card-illustration {
        justify-content: center;
        min-height: 45px;
        margin-top: 12px;
        font-size: 38px;
    }


    /* Features */

    .new-vision-features {
        grid-template-columns: 1fr;
        gap: 0;
        margin-top: 20px;
        padding: 5px 18px;
        border-radius: 14px;
    }

    .new-vision-feature,
    .new-vision-feature:first-child,
    .new-vision-feature:last-child {
        width: 100%;
        min-height: 90px;
        padding: 15px 0;
        border-right: none;
        border-bottom: 1px solid #dce2ec;
        box-sizing: border-box;
    }

    .new-vision-feature:last-child {
        border-bottom: none;
    }

    .new-vision-feature:nth-child(3),
    .new-vision-feature:nth-child(4) {
        border-top: none;
        padding-top: 15px;
    }

    .new-vision-feature-icon {
        flex: 0 0 58px;
        width: 58px;
        height: 58px;
        font-size: 24px;
    }

    .new-vision-feature-content h4 {
        font-size: 14px;
    }

    .new-vision-feature-content p {
        font-size: 11px;
        line-height: 1.5;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .new-vision-section {
        padding: 30px 10px 30px;
        padding-top:0px !important;
    }

    .new-vision-main-title {
        font-size: 26px;
    }

    .new-vision-subtitle {
        font-size: 12px;
    }

    .new-vision-intro {
        font-size: 18px;
        line-height:1.3;
    }

    .new-vision-card-image {
        height: 200px;
        min-height: 200px;
    }

    .new-vision-card-content {
        padding: 25px 18px 22px;
    }

    .new-vision-icon {
        width: 70px;
        height: 70px;
        font-size: 27px;
    }

    .new-vision-card-title {
        font-size: 22px;
    }

    .new-vision-card-text {
        font-size: 18px;
        line-height:1.3;
    }

    .new-vision-feature-icon {
        flex-basis: 52px;
        width: 52px;
        height: 52px;
        font-size: 21px;
    }

    .new-vision-feature-content h4 {
        font-size: 13px;
    }

    .new-vision-feature-content p {
        font-size: 10px;
    }

}




/* =========================================
   SERVICES PAGE
========================================= */

.service-page-wrapper {
    width: 100%;
    overflow: hidden;
    background: #ffffff;
}

.service-page-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 20px;
}


/* =========================================
   HERO
========================================= */

.service-page-hero {
    position: relative;
    width: 100%;
       min-height: 250px;
    height: 250px;
    background: #082d70;
    overflow: hidden;
}

.service-page-hero-content {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: stretch;
    width: 100%;
    min-height: 250px;
    height: 250px;
}

.service-page-hero-text {
    width: 52%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 50px 50px 50px max(20px, calc((100vw - 1180px) / 2));
}

.service-page-small-title {
    display: block;

    margin-bottom: 12px;

    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.5px;

    color: #e8a21a;
}

.service-page-hero-text h1 {
    margin: 0;

    font-family:"Times New Roman";

    font-size: 64px;
    line-height: 1.05;
    font-weight: 700;

    color: #ffffff;
}

.service-page-hero-text h1 span {
    color: #e6a21a;
}

.service-page-hero-line {
    width: 55px;
    height: 3px;

    margin: 20px 0;

    background: #e6a21a;
}

.service-page-hero-text p {
    max-width: 470px;

    margin: 0;

    font-size: 16px;
    line-height: 1.7;

    color: rgba(255, 255, 255, 0.92);
}

.service-page-hero-image {
    position: relative;

    width: 48%;

    overflow: hidden;
}

.service-page-hero-image::before {
    content: "";

    position: absolute;
    z-index: 2;

    left: -75px;
    top: -10%;

    width: 150px;
    height: 120%;

    background: #082d70;

    transform: skewX(-28deg);
}

.service-page-hero-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


/* =========================================
   BREADCRUMB
========================================= */

.service-page-breadcrumb-section {
    width: 100%;

    background: #f5f8fc;

    border-bottom: 1px solid #e7edf5;
}

.service-page-breadcrumb {
    min-height: 58px;

    display: flex;
    align-items: center;

    gap: 13px;

    font-size: 14px;
}

.service-page-breadcrumb a {
    display: flex;
    align-items: center;

    gap: 9px;

    text-decoration: none;

    color: #65758b;

    transition: 0.3s ease;
}

.service-page-breadcrumb a:hover {
    color: #0b4fa8;
}

.service-page-breadcrumb a i {
    font-size: 13px;
}

.service-page-breadcrumb > i {
    color: #9ba8b8;
    font-size: 11px;
}

.service-page-breadcrumb span {
    font-weight: 600;
    color: #e29b13;
}


/* =========================================
   SERVICES SECTION
========================================= */

.service-page-services {
    position: relative;

    padding: 60px 0 60px;

    background: #ffffff;
}

.service-page-section-heading {
    text-align: center;

    max-width: 760px;

    margin: 0 auto 48px;
}

.service-page-section-subtitle {
    position: relative;

    display: inline-flex;
    align-items: center;

    gap: 14px;

    margin-bottom: 12px;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.7px;

    color: #dfa019;
}

/* .service-page-section-subtitle::before,
.service-page-section-subtitle::after {
    content: "";

    width: 38px;
    height: 1px;

    background: #d8dde5;
} */

.service-page-section-heading h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 39px;
    line-height: 1.15;

    color: #092e70;
}

.service-page-section-heading h2 span {
    display: inline-block;
    color: #1686d4;
}

.service-page-heading-line {
    display: flex;
    align-items: center;
    justify-content: center;

    margin: 15px 0 17px;
}

.service-page-heading-line::before,
.service-page-heading-line::after {
    content: "";

    width: 30px;
    height: 2px;

    background: #dfa019;
}

.service-page-heading-line span {
    width: 7px;
    height: 7px;

    margin: 0 7px;

    border-radius: 50%;

    background: #0b4fa8;
}

.service-page-section-heading p {
    max-width: 650px;

    margin: 0 auto;

    font-size: 18px;
    line-height: 1.2;

    color: #34415a;
}


/* =========================================
   SERVICE GRID
========================================= */

.service-page-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 28px 24px;
}


/* =========================================
   SERVICE CARD
========================================= */

.service-page-card {
    position: relative;

    background: #ffffff;

    border: 1px solid #e4e8ed;

    border-radius: 10px;

    overflow: hidden;

    box-shadow: 0 7px 25px rgba(15, 43, 80, 0.07);

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;
}

.service-page-card:hover {
    transform: translateY(-7px);

    box-shadow: 0 15px 35px rgba(15, 43, 80, 0.14);
}


/* =========================================
   CARD IMAGE
========================================= */

.service-page-card-image {
    position: relative;

    height: 205px;

    overflow: visible;
}

.service-page-card-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    border-radius: 10px 10px 0 0;
}


/* =========================================
   CARD ICON
========================================= */

.service-page-card-icon {
    position: absolute;

    left: 50%;
    bottom: -32px;

    transform: translateX(-50%);

    width: 66px;
    height: 66px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #086bd0;

    border: 5px solid #ffffff;

    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.12);

    color: #ffffff;

    font-size: 25px;

    z-index: 3;
}

.service-page-gold-icon {
    background: #e5a01a;
}


/* =========================================
   CARD CONTENT
========================================= */

.service-page-card-content {
    /* min-height: 195px; */
    min-height:154px;

    padding: 48px 22px 25px;

    text-align: center;
}

.service-page-card-content h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 19px;
    line-height: 1.3;

    color: #092e70;
}

.service-page-card-line {
    width: 35px;
    height: 2px;

    margin: 13px auto 15px;

    background: #e4a01a;
}

.service-page-card-content p {
    margin: 0;

    font-size: 18px;
    line-height: 1.2;

    color: #34415a;
}


/* =========================================
   CTA SECTION
========================================= */

.service-page-cta-section {
    padding: 0 0 75px;

    background: #ffffff;
}

.service-page-cta {
    position: relative;

    min-height: 270px;

    display: flex;
    align-items: stretch;

    overflow: hidden;

    border-radius: 12px;

    background: #062c6e;
}

.service-page-cta-content {
    position: relative;
    z-index: 2;

    width: 48%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 40px 30px 40px 55px;
}

.service-page-cta-content > span {
    margin-bottom: 8px;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 1.5px;

    color: #e6a21a;
}

.service-page-cta-content h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 38px;
    line-height: 1.08;

    color: #ffffff;
}

.service-page-cta-content h2 strong {
    color: #e5a01a;
}

.service-page-cta-content p {
    max-width: 390px;

    margin: 13px 0 20px;

    font-size: 14px;
    line-height: 1.6;

    color: rgba(255, 255, 255, 0.88);
}

.service-page-cta-button {
    width: fit-content;

    display: inline-flex;
    align-items: center;
    gap: 10px;

    padding: 12px 19px;

    border-radius: 4px;

    background: #e7a019;

    color: #ffffff;

    font-size: 12px;
    font-weight: 700;

    text-decoration: none;

    transition: 0.3s ease;
}

.service-page-cta-button:hover {
    background: #ffffff;
    color: #092e70;
}

.service-page-cta-image {
    position: relative;

    width: 52%;

    overflow: hidden;
}

.service-page-cta-image::before {
    content: "";

    position: absolute;
    z-index: 2;

    left: -60px;
    top: -20%;

    width: 120px;
    height: 140%;

    background: #062c6e;

    transform: skewX(-28deg);
}

.service-page-cta-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


/* =========================================
   LARGE TABLET
========================================= */

@media (max-width: 1100px) {

    .service-page-container {
        max-width: 960px;
    }

    .service-page-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .service-page-hero-text {
        padding-left: 35px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .service-page-hero {
        min-height: 225px !important;
        height: 225px !important;
    }

    .service-page-hero-content {
        min-height: 340px;
    }

    .service-page-hero-text {
        width: 50%;

        padding: 40px 25px;
    }

    .service-page-hero-text h1 {
        font-size: 48px;
    }

    .service-page-hero-text p {
        font-size: 14px;
    }

    .service-page-hero-image {
        width: 50%;
    }

    .service-page-grid {
        grid-template-columns: repeat(2, 1fr);

        gap: 25px;
    }

    .service-page-card-image {
        height: 230px;
    }

    .service-page-section-heading h2 {
        font-size: 34px;
    }

    .service-page-cta-content {
        padding-left: 35px;
    }

    .service-page-cta-content h2 {
        font-size: 32px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .service-page-container {
        padding: 0 15px;
    }


    /* HERO */

    .service-page-hero {
        min-height: auto;
    }

    .service-page-hero-content {
        display: flex;
        /* flex-direction: column; */

        min-height: auto;
    }

    .service-page-hero-text {
        width: 100%;

        padding: 50px 25px 35px;

        order: 1;
    }

    .service-page-hero-text h1 {
        font-size: 46px;
    }

    .service-page-hero-text p {
        max-width: 100%;
    }

    .service-page-hero-image {
        width: 100%;
        height: 280px;

        order: 2;
    }

    .service-page-hero-image::before {
        display: none;
    }


    /* BREADCRUMB */

    .service-page-breadcrumb {
        min-height: 52px;

        gap: 10px;

        font-size: 13px;
    }


    /* SERVICES */

    .service-page-services {
        padding: 30px 0 30px;
    }

    .service-page-section-heading {
        margin-bottom: 35px;
    }

    .service-page-section-subtitle {
        font-size: 12px;
    }

    .service-page-section-heading h2 {
        font-size: 30px;
    }

    .service-page-section-heading p {
        font-size: 13px;
    }


    /* GRID */

    .service-page-grid {
        grid-template-columns: 1fr;

        gap: 25px;

        max-width: 430px;

        margin: 0 auto;
    }

    .service-page-card-image {
        height: 240px;
    }

    .service-page-card-content {
        min-height: auto;

        padding: 48px 25px 28px;
    }

    .service-page-card-content h3 {
        font-size: 20px;
    }

    .service-page-card-content p {
        font-size: 18px;
    }


    /* CTA */

    .service-page-cta-section {
        padding-bottom: 55px;
    }

    .service-page-cta {
        flex-direction: column;

        min-height: auto;
    }

    .service-page-cta-content {
        width: 100%;

        padding: 40px 25px 35px;
    }

    .service-page-cta-content h2 {
        font-size: 34px;
    }

    .service-page-cta-content p {
        font-size: 13px;
    }

    .service-page-cta-image {
        width: 100%;
        height: 230px;
    }

    .service-page-cta-image::before {
        display: none;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .service-page-hero-text {
        padding: 40px 20px 30px;
    }

    .service-page-hero-text h1 {
        font-size: 40px;
    }

    .service-page-hero-text p {
        font-size: 13px;
    }

    .service-page-hero-image {
        height: 230px;
    }

    .service-page-section-heading h2 {
        font-size: 30px;
    }

    .service-page-section-heading p {
        font-size: 18px;
    }

    .service-page-card-image {
        height: 220px;
    }

    .service-page-card-content {
        padding-left: 20px;
        padding-right: 20px;
    }

    .service-page-cta-content {
        padding: 35px 20px;
    }

    .service-page-cta-content h2 {
        font-size: 31px;
    }

    .service-page-cta-image {
        height: 200px;
    }

}



/* =========================================
   PROJECT PAGE
========================================= */

.project-page-wrapper {
    width: 100%;
    overflow: hidden;
    background: #ffffff;
}

.project-page-container {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 25px;
}


/* =========================================
   HERO
========================================= */

.project-page-hero {
    width: 100%;
    min-height: 330px;
    background: #062b6b;
    overflow: hidden;
}

.project-page-hero-content {
    width: 100%;
    min-height: 330px;

    display: flex;
    align-items: stretch;
}

.project-page-hero-text {
    width: 52%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding-left: max(25px, calc((100vw - 1280px) / 2));
    padding-right: 50px;

    position: relative;
    z-index: 3;

    background:
        linear-gradient(
            135deg,
            rgba(6, 43, 107, 1),
            rgba(4, 38, 94, 1)
        );
}

.project-page-hero-subtitle {
    margin-bottom: 12px;

    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.4px;

    color: #e6a01a;
}

.project-page-hero-text h1 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 58px;
    line-height: 1.05;
    font-weight: 700;

    color: #ffffff;
}

.project-page-hero-text h1 span {
    color: #e7a019;
}

.project-page-hero-line {
    width: 55px;
    height: 3px;

    margin: 18px 0;

    background: #e5a019;
}

.project-page-hero-text p {
    max-width: 500px;

    margin: 0;

    font-size: 15px;
    line-height: 1.7;

    color: rgba(255, 255, 255, 0.92);
}

.project-page-hero-image {
    position: relative;

    width: 48%;

    overflow: hidden;
}

.project-page-hero-image::before {
    content: "";

    position: absolute;
    z-index: 2;

    left: -75px;
    top: -15%;

    width: 145px;
    height: 130%;

    background: #062b6b;

    transform: skewX(-28deg);

    border-right: 2px solid #e5a019;
}

.project-page-hero-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


/* =========================================
   BREADCRUMB
========================================= */

.project-page-breadcrumb-section {
    width: 100%;

    background: #f5f8fc;

    border-bottom: 1px solid #e6ebf2;
}

.project-page-breadcrumb {
    min-height: 55px;

    display: flex;
    align-items: center;

    gap: 13px;

    font-size: 13px;
}

.project-page-breadcrumb a {
    display: flex;
    align-items: center;

    gap: 9px;

    color: #64748b;

    text-decoration: none;

    transition: 0.3s ease;
}

.project-page-breadcrumb a:hover {
    color: #0a4e9f;
}

.project-page-breadcrumb a i {
    color: #52657c;
}

.project-page-breadcrumb > i {
    color: #a2adba;
    font-size: 10px;
}

.project-page-breadcrumb-active {
    color: #e19d15;
    font-weight: 600;
}


/* =========================================
   STATS
========================================= */

.project-page-stats-section {
    padding: 20px 0 5px;

    background: #ffffff;
}

.project-page-stats {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    border-bottom: 1px solid #e7ebf0;

    padding: 10px 0 20px;
}

.project-page-stat-item {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 18px;

    min-height: 75px;
}

.project-page-stat-item:not(:last-child)::after {
    content: "";

    position: absolute;

    right: 0;
    top: 10px;

    width: 1px;
    height: 55px;

    background: #dce2ea;
}

.project-page-stat-icon {
    width: 58px;
    height: 58px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #082f73;

    color: #ffffff;

    font-size: 22px;
}

.project-page-gold-icon {
    background: #e39b0e;
}

.project-page-stat-content h3 {
    margin: 0 0 2px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;
    line-height: 1;

    color: #0a2f70;
}

.project-page-stat-content p {
    margin: 5px 0 0;

    font-size: 12px;

    color: #52627a;
}


/* =========================================
   COMPLETED PROJECTS
========================================= */

.project-page-completed-section {
    padding: 60px 0 60px;

    background: #ffffff;
}

.project-page-portfolio-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 25px;

    margin-bottom: 22px;
}

.project-page-portfolio-title > span {
    display: block;

    margin-bottom: 5px;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 1.2px;

    color: #e29c16;
}

.project-page-portfolio-title h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 31px;
    line-height: 1.15;

    color: #092e70;
}

.project-page-portfolio-title h2 strong {
    color: #1784d1;
}


/* =========================================
   FILTERS
========================================= */

.project-page-filter {
    display: flex;
    align-items: center;

    gap: 10px;

    flex-wrap: wrap;

    justify-content: flex-end;
}

.project-page-filter-btn {
    height: 34px;

    padding: 0 19px;

    border: 1px solid #dce2e9;

    border-radius: 5px;

    background: #ffffff;

    color: #263b59;

    font-size: 15px;

    cursor: pointer;

    transition: all 0.3s ease;
}

.project-page-filter-btn:hover {
    border-color: #0b4c99;

    color: #0b4c99;
}

.project-page-filter-active {
    background: #082f73;

    border-color: #082f73;

    color: #ffffff !important;
}


/* =========================================
   PROJECT GRID
========================================= */

.project-page-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 20px;
}


/* =========================================
   PROJECT CARD
========================================= */

.project-page-card {
    background: #ffffff;

    border: 1px solid #e0e5eb;

    border-radius: 12px;

    overflow: hidden;

    box-shadow: 0 4px 18px rgba(10, 39, 77, 0.06);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.project-page-card:hover {
    transform: translateY(-6px);

    box-shadow: 0 12px 28px rgba(10, 39, 77, 0.13);
}


/* =========================================
   CARD IMAGE
========================================= */

.project-page-card-image {
    position: relative;

    width: 100%;
    height: 175px;

    overflow: hidden;
}

.project-page-card-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform 0.5s ease;
}

.project-page-card:hover
.project-page-card-image img {
    transform: scale(1.05);
}


/* =========================================
   CARD TAG
========================================= */

.project-page-card-tag {
    position: absolute;

    top: 12px;
    left: 12px;

    padding: 7px 12px;

    border-radius: 5px;

    background: #082f73;

    color: #ffffff;

    font-size: 10px;
    font-weight: 600;
}

.project-page-gold-tag {
    background: #e29c13;
}


/* =========================================
   CARD ARROW
========================================= */

.project-page-card-arrow {
    position: absolute;

    right: 12px;
    bottom: -17px;

    width: 35px;
    height: 35px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #ffffff;

    color: #092e70;

    text-decoration: none;

    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.15);

    transition: 0.3s ease;
}

.project-page-card-arrow:hover {
    background: #e29c13;

    color: #ffffff;
}


/* =========================================
   CARD CONTENT
========================================= */

.project-page-card-content {
    padding: 20px 14px 13px;
}

.project-page-card-content h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 14px;

    color: #092e70;
}

.project-page-location {
    margin: 5px 0 11px;

    font-size: 18px;

    color: #34415a;
}

.project-page-card-info {
    display: flex;
    align-items: center;

    gap: 10px;

    padding-top: 10px;

    border-top: 1px solid #edf0f3;

    font-size: 16px;

    color: #34415a;
}

.project-page-card-info span {
    display: flex;
    align-items: center;

    gap: 5px;
}

.project-page-card-info i {
    color: #092e70;
}

.project-page-info-divider {
    width: 1px;
    height: 13px;

    background: #d9dfe7;
}


/* =========================================
   VIEW ALL BUTTON
========================================= */

.project-page-view-all {
    display: flex;
    justify-content: center;

    margin: 25px 0 28px;
}

.project-page-view-all a {
    display: inline-flex;
    align-items: center;

    gap: 15px;

    padding: 11px 23px;

    border-radius: 5px;

    background: #082f73;

    color: #ffffff;

    text-decoration: none;

    font-size: 11px;
    font-weight: 700;

    transition: 0.3s ease;
}

.project-page-view-all a:hover {
    background: #e29c13;
}

.project-page-view-all a i {
    font-size: 12px;
}


/* =========================================
   ONGOING / CONSULTATION
========================================= */

.project-page-extra-projects {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 18px;
}

.project-page-extra-card {
    min-height: 88px;

    display: flex;
    align-items: center;

    gap: 20px;

    padding: 16px 22px;

    border: 1px solid #e0e7ef;

    border-radius: 8px;

    background: #f5f9fd;

    transition: 0.3s ease;
}

.project-page-extra-card:hover {
    transform: translateY(-3px);

    box-shadow: 0 8px 20px rgba(10, 39, 77, 0.08);
}

.project-page-extra-icon {
    width: 55px;
    height: 55px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #082f73;

    color: #ffffff;

    font-size: 21px;
}

.project-page-gold-extra-icon {
    background: #e39d12;
}

.project-page-extra-content {
    flex: 1;
}

.project-page-extra-content h3 {
    margin: 0 0 5px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 15px;

    color: #092e70;
}

.project-page-extra-card:nth-child(2)
.project-page-extra-content h3 {
    color: #c88708;
}

.project-page-extra-content p {
    margin: 0;

    font-size: 11px;

    color: #63728a;
}

.project-page-extra-arrow {
    color: #092e70;

    font-size: 17px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .project-page-container {
        max-width: 960px;
    }

    .project-page-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .project-page-portfolio-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .project-page-filter {
        justify-content: flex-start;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .project-page-hero {
        min-height: 310px;
    }

    .project-page-hero-content {
        min-height: 310px;
    }

    .project-page-hero-text {
        width: 50%;

        padding-left: 35px;
        padding-right: 25px;
    }

    .project-page-hero-image {
        width: 50%;
    }

    .project-page-hero-text h1 {
        font-size: 46px;
    }

    .project-page-hero-text p {
        font-size: 13px;
    }

    .project-page-stats {
        grid-template-columns: repeat(2, 1fr);

        row-gap: 15px;
    }

    .project-page-stat-item:nth-child(2)::after {
        display: none;
    }

    .project-page-stat-item:nth-child(3)::after {
        display: block;
    }

    .project-page-stat-item:nth-child(4)::after {
        display: none;
    }

    .project-page-extra-projects {
        grid-template-columns: 1fr;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .project-page-container {
        padding: 0 15px;
    }


    /* HERO */

    .project-page-hero {
        min-height: auto;
    }

    .project-page-hero-content {
        min-height: auto;

        flex-direction: column;
    }

    .project-page-hero-text {
        width: 100%;

        padding: 45px 25px 35px;

        order: 1;
    }

    .project-page-hero-text h1 {
        font-size: 43px;
    }

    .project-page-hero-text p {
        max-width: 100%;

        font-size: 13px;
    }

    .project-page-hero-image {
        width: 100%;
        height: 250px;

        order: 2;
    }

    .project-page-hero-image::before {
        display: none;
    }


    /* BREADCRUMB */

    .project-page-breadcrumb {
        min-height: 50px;

        font-size: 12px;
    }


    /* STATS */

    .project-page-stats-section {
        padding-top: 10px;
    }

    .project-page-stats {
        grid-template-columns: repeat(2, 1fr);

        padding-bottom: 10px;
    }

    .project-page-stat-item {
        min-height: 70px;

        justify-content: flex-start;

        gap: 10px;

        padding: 8px;
    }

    .project-page-stat-item::after {
        display: none !important;
    }

    .project-page-stat-icon {
        width: 46px;
        height: 46px;

        font-size: 17px;
    }

    .project-page-stat-content h3 {
        font-size: 22px;
    }

    .project-page-stat-content p {
        font-size: 10px;
    }


    /* COMPLETED PROJECTS */

    .project-page-completed-section {
        padding: 30px 0 30px;
    }

    .project-page-portfolio-header {
        margin-bottom: 25px;
    }

    .project-page-portfolio-title h2 {
        font-size: 28px;
    }

    .project-page-filter {
        width: 100%;

        display: grid;

        grid-template-columns: repeat(2, 1fr);

        gap: 8px;
    }

    .project-page-filter-btn {
        width: 100%;
        padding: 0 8px;

        font-size: 14px;
    }


    /* PROJECT GRID */

    .project-page-grid {
        grid-template-columns: 1fr;

        gap: 20px;

        max-width: 480px;

        margin: 0 auto;
    }

    .project-page-card-image {
        height: 230px;
    }

    .project-page-card-content {
        padding: 21px 16px 15px;
    }

    .project-page-card-content h3 {
        font-size: 16px;
    }

    .project-page-location {
        font-size: 18px;
    }

    .project-page-card-info {
        font-size: 16px;
    }


    /* EXTRA PROJECTS */

    .project-page-extra-projects {
        grid-template-columns: 1fr;

        gap: 15px;
    }

    .project-page-extra-card {
        min-height: 80px;

        gap: 12px;

        padding: 13px 15px;
    }

    .project-page-extra-icon {
        width: 48px;
        height: 48px;

        font-size: 18px;
    }

    .project-page-extra-content h3 {
        font-size: 13px;
    }

    .project-page-extra-content p {
        font-size: 10px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .project-page-hero-text {
        padding: 38px 20px 30px;
    }

    .project-page-hero-text h1 {
        font-size: 39px;
    }

    .project-page-hero-image {
        height: 220px;
    }

    .project-page-stats {
        margin: 0 -5px;
    }

    .project-page-stat-item {
        padding: 5px;
    }

    .project-page-stat-icon {
        width: 42px;
        height: 42px;

        font-size: 15px;
    }

    .project-page-stat-content h3 {
        font-size: 20px;
    }

    .project-page-stat-content p {
        font-size: 9px;
    }

    .project-page-portfolio-title h2 {
        font-size: 25px;
    }

    .project-page-filter {
        grid-template-columns: repeat(2, 1fr);
    }

    .project-page-card-image {
        height: 210px;
    }

    .project-page-view-all a {
        width: 100%;

        justify-content: center;
    }

}



/* =========================================
   GALLERY PAGE
========================================= */

.gallery-page-wrapper {
    width: 100%;
    overflow: hidden;
    background: #ffffff;
}

.gallery-page-container {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 25px;
}


/* =========================================
   HERO SECTION
========================================= */

.gallery-page-hero {
    width: 100%;
    min-height: 325px;

    background: #062b6b;

    overflow: hidden;
}

.gallery-page-hero-content {
    width: 100%;
    min-height: 325px;

    display: flex;
}

.gallery-page-hero-text {
    width: 52%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding-left: max(
        25px,
        calc((100vw - 1280px) / 2)
    );

    padding-right: 50px;

    background:
        linear-gradient(
            135deg,
            #062b6b,
            #03245b
        );

    position: relative;
    z-index: 3;
}

.gallery-page-hero-subtitle {
    margin-bottom: 12px;

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 1.2px;

    color: #e8a019;
}

.gallery-page-hero-text h1 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 58px;
    line-height: 1.05;

    color: #ffffff;
}

.gallery-page-hero-text h1 span {
    color: #e7a019;
}

.gallery-page-hero-line {
    width: 54px;
    height: 3px;

    margin: 18px 0;

    background: #e5a019;
}

.gallery-page-hero-text p {
    max-width: 520px;

    margin: 0;

    font-size: 15px;
    line-height: 1.7;

    color: #ffffff;
}

.gallery-page-hero-image {
    width: 48%;

    position: relative;

    overflow: hidden;
}

.gallery-page-hero-image::before {
    content: "";

    position: absolute;

    z-index: 2;

    left: -65px;
    top: -15%;

    width: 135px;
    height: 130%;

    background: #062b6b;

    transform: skewX(-28deg);

    border-right: 2px solid #e5a019;
}

.gallery-page-hero-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


/* =========================================
   BREADCRUMB
========================================= */

.gallery-page-breadcrumb-section {
    width: 100%;

    background: #f5f8fc;

    border-bottom: 1px solid #e4e9ef;
}

.gallery-page-breadcrumb {
    min-height: 55px;

    display: flex;
    align-items: center;

    gap: 13px;

    font-size: 13px;
}

.gallery-page-breadcrumb a {
    display: flex;
    align-items: center;

    gap: 9px;

    text-decoration: none;

    color: #607087;

    transition: 0.3s ease;
}

.gallery-page-breadcrumb a:hover {
    color: #0b4c99;
}

.gallery-page-breadcrumb a i {
    color: #52657b;
}

.gallery-page-breadcrumb > i {
    font-size: 10px;
    color: #a2adba;
}

.gallery-page-breadcrumb-active {
    font-weight: 600;

    color: #e29c14;
}


/* =========================================
   GALLERY SECTION
========================================= */

.gallery-page-section {
    padding: 38px 0 65px;

    background: #ffffff;
}


/* =========================================
   FILTER
========================================= */

.gallery-page-filter {
    display: flex;
    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    gap: 14px;

    margin-bottom: 28px;
}

.gallery-page-filter-btn {
    min-width: 130px;
    height: 43px;

    padding: 0 20px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    border: 1px solid #dce3eb;

    border-radius: 6px;

    background: #ffffff;

    color: #132e58;

    font-size: 15px;
    font-weight: 600;

    cursor: pointer;

    transition:
        background 0.3s ease,
        color 0.3s ease,
        border 0.3s ease,
        transform 0.3s ease;
}

.gallery-page-filter-btn i {
    font-size: 14px;
}

.gallery-page-filter-btn:hover {
    border-color: #0a3577;

    color: #0a3577;

    transform: translateY(-2px);
}

.gallery-page-filter-active {
    background: #082f73;

    border-color: #082f73;

    color: #ffffff;
}

.gallery-page-filter-active:hover {
    color: #ffffff;

    background: #082f73;
}


/* =========================================
   GALLERY GRID
========================================= */

.gallery-page-grid {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 15px;
}


/* =========================================
   GALLERY ITEM
========================================= */

.gallery-page-item {
    position: relative;

    width: 100%;

    height: 235px;

    overflow: hidden;

    border-radius: 8px;

    background: #eeeeee;

    cursor: pointer;

    animation: gallery-page-fade-in 0.4s ease;
}

@keyframes gallery-page-fade-in {

    from {
        opacity: 0;
        transform: scale(0.97);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }

}

.gallery-page-item img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 0.5s ease;
}

.gallery-page-item:hover img {
    transform: scale(1.08);
}


/* =========================================
   IMAGE OVERLAY
========================================= */

.gallery-page-overlay {
    position: absolute;

    inset: 0;

    display: flex;
    align-items: flex-end;

    padding: 20px;

    opacity: 0;

    background:
        linear-gradient(
            to top,
            rgba(4, 27, 65, 0.9),
            rgba(4, 27, 65, 0.15),
            transparent
        );

    transition:
        opacity 0.35s ease;
}

.gallery-page-item:hover
.gallery-page-overlay {
    opacity: 1;
}

.gallery-page-overlay-content {
    width: 100%;

    position: relative;
}

.gallery-page-overlay-content span {
    display: block;

    margin-bottom: 5px;

    font-size: 10px;
    font-weight: 600;

    color: #e8a019;

    text-transform: uppercase;
}

.gallery-page-overlay-content h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 18px;

    color: #ffffff;
}


/* =========================================
   VIEW BUTTON
========================================= */

.gallery-page-view-btn {
    position: absolute;

    right: 0;
    bottom: 0;

    width: 38px;
    height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: none;

    border-radius: 50%;

    background: #e49c10;

    color: #ffffff;

    cursor: pointer;

    font-size: 13px;

    transition: 0.3s ease;
}

.gallery-page-view-btn:hover {
    background: #ffffff;

    color: #092f70;

    transform: rotate(90deg);
}


/* =========================================
   CTA
========================================= */

.gallery-page-cta-section {
    padding: 0 0 70px;

    background: #ffffff;
}

.gallery-page-cta {
    min-height: 195px;

    display: flex;

    position: relative;

    overflow: hidden;

    border-radius: 12px;

    background: #062d70;
}

.gallery-page-cta-content {
    width: 48%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 30px 55px;

    position: relative;
    z-index: 3;
}

.gallery-page-cta-content::after {
    content: "";

    position: absolute;

    right: -45px;
    top: -30px;

    width: 100px;
    height: 260px;

    background: #062d70;

    transform: skewX(-25deg);

    border-right: 2px solid #e3a016;
}

.gallery-page-cta-content > span {
    margin-bottom: 7px;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 1px;

    color: #e5a018;
}

.gallery-page-cta-content h2 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 30px;
    line-height: 1.05;

    color: #ffffff;
}

.gallery-page-cta-content h2 strong {
    color: #e7a019;
}

.gallery-page-cta-content p {
    max-width: 360px;

    margin: 8px 0 14px;

    font-size: 11px;
    line-height: 1.5;

    color: rgba(255, 255, 255, 0.9);
}

.gallery-page-cta-btn {
    width: fit-content;

    display: inline-flex;
    align-items: center;

    gap: 12px;

    padding: 10px 17px;

    border-radius: 4px;

    background: #e59c10;

    color: #ffffff;

    text-decoration: none;

    font-size: 10px;
    font-weight: 700;

    transition: 0.3s ease;
}

.gallery-page-cta-btn:hover {
    background: #ffffff;

    color: #092f70;
}

.gallery-page-cta-image {
    width: 52%;

    position: relative;

    overflow: hidden;
}

.gallery-page-cta-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


/* =========================================
   LIGHTBOX
========================================= */

.gallery-page-lightbox {
    position: fixed;

    inset: 0;

    z-index: 9999;

    display: none;
    align-items: center;
    justify-content: center;

    padding: 30px;

    background: rgba(0, 15, 40, 0.92);
}

.gallery-page-lightbox.gallery-page-lightbox-active {
    display: flex;
}

.gallery-page-lightbox-image {
    max-width: 90%;
    max-height: 85vh;

    object-fit: contain;

    border-radius: 5px;

    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.5);
}

.gallery-page-lightbox-close,
.gallery-page-lightbox-prev,
.gallery-page-lightbox-next {
    position: absolute;

    width: 45px;
    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: none;

    border-radius: 50%;

    background: #ffffff;

    color: #092f70;

    cursor: pointer;

    font-size: 18px;

    transition: 0.3s ease;
}

.gallery-page-lightbox-close:hover,
.gallery-page-lightbox-prev:hover,
.gallery-page-lightbox-next:hover {
    background: #e5a019;

    color: #ffffff;
}

.gallery-page-lightbox-close {
    top: 25px;
    right: 25px;
}

.gallery-page-lightbox-prev {
    left: 30px;
    top: 50%;

    transform: translateY(-50%);
}

.gallery-page-lightbox-next {
    right: 30px;
    top: 50%;

    transform: translateY(-50%);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .gallery-page-container {
        max-width: 960px;
    }

    .gallery-page-grid {
        grid-template-columns:
            repeat(3, 1fr);
    }

    .gallery-page-item {
        height: 220px;
    }

}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .gallery-page-hero {
        min-height: 300px;
    }

    .gallery-page-hero-content {
        min-height: 300px;
    }

    .gallery-page-hero-text {
        width: 50%;

        padding-left: 35px;
        padding-right: 25px;
    }

    .gallery-page-hero-image {
        width: 50%;
    }

    .gallery-page-hero-text h1 {
        font-size: 46px;
    }

    .gallery-page-hero-text p {
        font-size: 13px;
    }

    .gallery-page-grid {
        grid-template-columns:
            repeat(2, 1fr);

        gap: 16px;
    }

    .gallery-page-item {
        height: 235px;
    }

    .gallery-page-filter {
        justify-content: flex-start;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .gallery-page-container {
        padding: 0 15px;
    }


    /* HERO */

    .gallery-page-hero {
        min-height: auto;
    }

    .gallery-page-hero-content {
        min-height: auto;

        flex-direction: column;
    }

    .gallery-page-hero-text {
        width: 100%;

        padding: 42px 25px 35px;

        order: 1;
    }

    .gallery-page-hero-text h1 {
        font-size: 43px;
    }

    .gallery-page-hero-text p {
        max-width: 100%;

        font-size: 13px;
    }

    .gallery-page-hero-image {
        width: 100%;

        height: 240px;

        order: 2;
    }

    .gallery-page-hero-image::before {
        display: none;
    }


    /* BREADCRUMB */

    .gallery-page-breadcrumb {
        min-height: 50px;

        font-size: 12px;
    }


    /* GALLERY */

    .gallery-page-section {
        padding: 30px 0 30px;
    }


    /* FILTER */

    .gallery-page-filter {
        display: grid;

        grid-template-columns:
            repeat(2, 1fr);

        gap: 8px;

        margin-bottom: 22px;
    }

    .gallery-page-filter-btn {
        width: 100%;

        min-width: 0;

        height: 42px;

        padding: 0 8px;

        font-size: 10px;
    }

    .gallery-page-filter-btn i {
        font-size: 12px;
    }


    /* GRID */

    .gallery-page-grid {
        grid-template-columns: 1fr;

        gap: 15px;
    }

    .gallery-page-item {
        height: 260px;
    }


    /* MOBILE OVERLAY */

    .gallery-page-overlay {
        opacity: 1;

        padding: 17px;

        background:
            linear-gradient(
                to top,
                rgba(4, 27, 65, 0.82),
                rgba(4, 27, 65, 0.03)
            );
    }

    .gallery-page-overlay-content h3 {
        font-size: 16px;
    }


    /* CTA */

    .gallery-page-cta-section {
        padding-bottom: 50px;
    }

    .gallery-page-cta {
        min-height: auto;

        flex-direction: column;
    }

    .gallery-page-cta-content {
        width: 100%;

        padding: 32px 25px 30px;
    }

    .gallery-page-cta-content::after {
        display: none;
    }

    .gallery-page-cta-content h2 {
        font-size: 27px;
    }

    .gallery-page-cta-image {
        width: 100%;

        height: 210px;
    }


    /* LIGHTBOX */

    .gallery-page-lightbox {
        padding: 20px;
    }

    .gallery-page-lightbox-image {
        max-width: 95%;
        max-height: 75vh;
    }

    .gallery-page-lightbox-close {
        top: 15px;
        right: 15px;

        width: 40px;
        height: 40px;
    }

    .gallery-page-lightbox-prev,
    .gallery-page-lightbox-next {
        width: 40px;
        height: 40px;
    }

    .gallery-page-lightbox-prev {
        left: 10px;
    }

    .gallery-page-lightbox-next {
        right: 10px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .gallery-page-hero-text {
        padding: 35px 20px 28px;
    }

    .gallery-page-hero-text h1 {
        font-size: 39px;
    }

    .gallery-page-hero-image {
        height: 215px;
    }

    .gallery-page-filter-btn {
        font-size: 14px;
    }

    .gallery-page-item {
        height: 225px;
    }

    .gallery-page-cta-content {
        padding: 28px 20px;
    }

    .gallery-page-cta-content h2 {
        font-size: 25px;
    }

}



/* =========================================
   CONTACT PAGE - MAIN
========================================= */

.contact-page {
    width: 100%;
    overflow: hidden;
    font-family: Arial, sans-serif;
    color: #122b5f;
}


/* =========================================
   HERO SECTION
========================================= */

.contact-page-hero {
    width: 100%;
    min-height: 390px;
    display: flex;
    position: relative;
    overflow: hidden;
    background: #06245c;
}

.contact-page-hero-content {
    width: 50%;
    padding: 75px 6.5%;
    background: #06245c;
    position: relative;
    z-index: 2;
}

.contact-page-hero-content::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(
            rgba(255,255,255,0.025) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,0.025) 1px,
            transparent 1px
        );
    background-size: 45px 45px;
    pointer-events: none;
}

.contact-page-hero-small {
    display: block;
    position: relative;
    margin-bottom: 15px;
    color: #f19a00;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
}

.contact-page-hero-content h1 {
    position: relative;
    margin: 0;
    color: #ffffff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 62px;
    line-height: 1.05;
    font-weight: 700;
}

.contact-page-hero-content h1 span {
    color: #f19a00;
}

.contact-page-hero-line {
    width: 62px;
    height: 3px;
    margin: 24px 0 22px;
    background: #f19a00;
    position: relative;
}

.contact-page-hero-content p {
    position: relative;
    max-width: 510px;
    margin: 0;
    color: #ffffff;
    font-size: 17px;
    line-height: 1.8;
}

.contact-page-hero-image {
    width: 50%;
    position: relative;
}

.contact-page-hero-image::before {
    content: "";
    position: absolute;
    left: -65px;
    top: 0;
    width: 130px;
    height: 100%;
    background: #06245c;
    clip-path: polygon(100% 0, 48% 50%, 100% 100%, 75% 100%, 0 50%, 75% 0);
    z-index: 2;
}

.contact-page-hero-image::after {
    content: "";
    position: absolute;
    left: -30px;
    top: 0;
    width: 100px;
    height: 100%;
    border-left: 2px solid #f19a00;
    transform: skewX(-30deg);
    z-index: 3;
}

.contact-page-hero-image img {
    width: 100%;
    height: 100%;
    min-height: 390px;
    object-fit: cover;
    display: block;
}


/* =========================================
   MAIN CONTACT SECTION
========================================= */

.contact-page-main {
    padding: 75px 20px;
    background: #ffffff;
    position: relative;
}

.contact-page-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
}

.contact-page-grid {
    display: grid;
    grid-template-columns: 0.82fr 1.18fr;
    gap: 55px;
    align-items: center;
}


/* =========================================
   LEFT CONTENT
========================================= */

.contact-page-info {
    padding: 5px 0;
}

.contact-page-section-label {
    display: block;
    margin-bottom: 12px;
    color: #e29c16;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

.contact-page-info h2 {
    margin: 0;
    color: #102d65;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 38px;
    line-height: 1.18;
}

.contact-page-info h2 span {
    color: #1678d4;
}

.contact-page-title-line {
    width: 55px;
    height: 3px;
    margin: 18px 0 18px;
    background: #e99500;
}

.contact-page-intro {
    max-width: 470px;
    margin: 0 0 24px;
    color: #34415a;
    font-size: 18px;
    line-height: 1.2;
    font-family:'Times New Roman';
}


/* =========================================
   INFORMATION CARDS
========================================= */

.contact-page-info-card {
    width: 100%;
    min-height: 88px;
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 12px;
    margin-bottom: 14px;
    background: #ffffff;
    border: 1px solid #edf0f5;
    border-radius: 8px;
    box-shadow: 0 5px 20px rgba(10, 42, 85, 0.07);
    transition: 0.3s ease;
}

.contact-page-info-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(10, 42, 85, 0.11);
}

.contact-page-info-icon {
    width: 68px;
    height: 68px;
    min-width: 68px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
}

.contact-page-info-icon i {
    color: #ffffff;
    font-size: 29px;
}

.contact-page-blue-icon {
    background: #062967;
}

.contact-page-orange-icon {
    background: #ed9200;
}

.contact-page-info-content h3 {
    margin: 0 0 7px;
    color: #0b70c9;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 16px;
}

.contact-page-info-content p {
    margin: 0;
    color: #34415a;
    font-size: 18px;
     font-family: "Times New Roman";
    line-height: 1.2;
}


/* =========================================
   FORM WRAPPER
========================================= */

.contact-page-form-wrapper {
    padding: 40px 35px 35px;
    background: #ffffff;
    border-radius: 14px;
    box-shadow: 0 7px 30px rgba(20, 46, 85, 0.08);
    border: 1px solid #f0f2f6;
}

.contact-page-form-header {
    text-align: center;
    margin-bottom: 27px;
}

.contact-page-form-header h2 {
    margin: 0;
    color: #102d65;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 30px;
}

.contact-page-form-header h2 span {
    color: #1478d1;
}

.contact-page-form-line {
    width: 48px;
    height: 3px;
    margin: 14px auto;
    background: #ed9200;
}

.contact-page-form-header p {
    max-width: 500px;
    margin: 0 auto;
    color: #34415a;
    font-size: 18px;
    line-height: 1.2;
    font-family:'Times New Roman';
}


/* =========================================
   FORM
========================================= */

.contact-page-form {
    width: 100%;
}

.contact-page-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.contact-page-form-group {
    width: 100%;
    margin-bottom: 15px;
}

.contact-page-form-group input,
.contact-page-form-group textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 15px 17px;
    border: 1px solid #e3e8ef;
    border-radius: 7px;
    outline: none;
    background: #ffffff;
    color: #263856;
    font-family: inherit;
    font-size: 15px;
    transition: 0.3s ease;
}

.contact-page-form-group input {
    height: 48px;
}

.contact-page-form-group textarea {
    min-height: 125px;
    resize: vertical;
}

.contact-page-form-group input::placeholder,
.contact-page-form-group textarea::placeholder {
    color: #9aa4b5;
}

.contact-page-form-group input:focus,
.contact-page-form-group textarea:focus {
    border-color: #1678d4;
    box-shadow: 0 0 0 3px rgba(22, 120, 212, 0.08);
}


/* =========================================
   SUBMIT BUTTON
========================================= */

.contact-page-submit-btn {
    width: 100%;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-top: 5px;
    border: none;
    border-radius: 7px;
    background: #ed9200;
    color: #ffffff;
    cursor: pointer;
    font-size: 13px;
    font-weight: 700;
    transition: 0.3s ease;
}

.contact-page-submit-btn i {
    font-size: 15px;
    transition: 0.3s ease;
}

.contact-page-submit-btn:hover {
    background: #d98100;
}

.contact-page-submit-btn:hover i {
    transform: translateX(5px);
}


/* =========================================
   MAP SECTION
========================================= */

.contact-page-map-section {
    padding: 65px 20px 75px;
    background: #f1f7ff;
    border-radius: 30px 30px 0 0;
}

.contact-page-map-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
}

.contact-page-map-heading {
    text-align: center;
    margin-bottom: 30px;
}

.contact-page-map-heading > span {
    display: block;
    margin-bottom: 10px;
    color: #e99500;
    font-size: 13px;
    font-weight: 700;
}

.contact-page-map-heading h2 {
    margin: 0;
    color: #102d65;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 36px;
}

.contact-page-map-heading h2 strong {
    color: #1678d4;
    font-weight: 700;
}

.contact-page-map-line {
    width: 45px;
    height: 3px;
    margin: 13px auto;
    background: #e99500;
}

.contact-page-map-heading p {
    margin: 0;
    color: #68758d;
    font-size: 14px;
    line-height: 1.7;
}

.contact-page-map {
    width: 100%;
    height: 400px;
    overflow: hidden;
    background: #ffffff;
    border: 5px solid #ffffff;
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(20, 50, 90, 0.10);
}

.contact-page-map iframe {
    width: 100%;
    height: 100%;
    display: block;
    border: 0;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .contact-page-hero {
        min-height: 330px;
    }

    .contact-page-hero-content {
        padding: 60px 5%;
    }

    .contact-page-hero-content h1 {
        font-size: 48px;
    }

    .contact-page-hero-content p {
        font-size: 15px;
    }

    .contact-page-grid {
        grid-template-columns: 1fr;
        gap: 45px;
        max-width: 760px;
        margin: 0 auto;
    }

    .contact-page-info h2 {
        font-size: 35px;
    }

    .contact-page-form-wrapper {
        padding: 35px 30px;
    }

    .contact-page-map {
        height: 350px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .contact-page-hero {
        display: block;
        min-height: auto;
    }

    .contact-page-hero-content {
        width: 100%;
        box-sizing: border-box;
        padding: 50px 25px;
    }

    .contact-page-hero-content h1 {
        font-size: 43px;
    }

    .contact-page-hero-content p {
        max-width: 100%;
        font-size: 14px;
        line-height: 1.7;
    }

    .contact-page-hero-image {
        width: 100%;
        height: 260px;
    }

    .contact-page-hero-image img {
        min-height: 260px;
    }

    .contact-page-hero-image::before,
    .contact-page-hero-image::after {
        display: none;
    }


    /* MAIN SECTION */

    .contact-page-main {
        padding: 30px 18px;
    }

    .contact-page-grid {
        display: block;
    }

    .contact-page-info {
        margin-bottom: 0px;
    }

    .contact-page-info h2 {
        font-size: 30px;
    }

    .contact-page-intro {
        font-size: 18px;
    }


    /* INFO CARDS */

    .contact-page-info-card {
        gap: 15px;
        min-height: 78px;
        padding: 10px;
    }

    .contact-page-info-icon {
        width: 58px;
        height: 58px;
        min-width: 58px;
    }

    .contact-page-info-icon i {
        font-size: 23px;
    }

    .contact-page-info-content h3 {
        font-size: 15px;
    }

    .contact-page-info-content p {
        font-size: 18px;
    }


    /* FORM */

    .contact-page-form-wrapper {
        padding: 30px 18px;
        border-radius: 10px;
    }

    .contact-page-form-header h2 {
        font-size: 27px;
    }

    .contact-page-form-header p {
        font-size: 18px;
    }

    .contact-page-form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .contact-page-form-group input {
        height: 48px;
    }

    .contact-page-form-group textarea {
        min-height: 130px;
    }


    /* MAP */

    .contact-page-map-section {
        padding: 50px 18px 60px;
        border-radius: 20px 20px 0 0;
    }

    .contact-page-map-heading h2 {
        font-size: 30px;
    }

    .contact-page-map-heading p {
        font-size: 13px;
    }

    .contact-page-map {
        height: 300px;
        border-width: 3px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .contact-page-hero-content {
        padding: 42px 20px;
    }

    .contact-page-hero-content h1 {
        font-size: 38px;
    }

    .contact-page-hero-small {
        font-size: 12px;
    }

    .contact-page-hero-image {
        height: 220px;
    }

    .contact-page-hero-image img {
        min-height: 220px;
    }

    .contact-page-info h2 {
        font-size: 27px;
    }

    .contact-page-info-card {
        align-items: flex-start;
    }

    .contact-page-info-icon {
        margin-top: 2px;
    }

    .contact-page-form-wrapper {
        padding: 27px 15px;
    }

    .contact-page-map {
        height: 270px;
    }

}




/* =========================================
   PROJECTS DROPDOWN
========================================= */

.header-dropdown {
    position: relative;
}

.header-dropdown > .header-menu-link {
    display: flex;
    align-items: center;
    gap: 7px;
}

.header-dropdown-icon {
    font-size: 9px;
    transition: transform 0.3s ease;
}


/* SUBMENU */

.header-submenu {
    position: absolute;
    top: calc(100% + 15px);
    left: 50%;
    transform: translateX(-50%) translateY(10px);

    min-width: 220px;
    padding: 10px 0;

    margin: 0;
    list-style: none;

    background: #ffffff;

    border-top: 3px solid #e89a00;

    border-radius: 0 0 8px 8px;

    box-shadow: 0 12px 30px rgba(0, 25, 70, 0.15);

    opacity: 0;
    visibility: hidden;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease,
        transform 0.3s ease;

    z-index: 999;
}


/* SMALL ARROW ABOVE SUBMENU */

.header-submenu::before {
    content: "";

    position: absolute;

    top: -8px;
    left: 50%;

    width: 14px;
    height: 14px;

    background: #ffffff;

    transform: translateX(-50%) rotate(45deg);

    border-left: 1px solid #e5e5e5;
    border-top: 1px solid #e5e5e5;

    z-index: -1;
}


/* SUBMENU ITEM */

.header-submenu-item {
    width: 100%;
}

.header-submenu-link {
    position: relative;

    display: flex;
    align-items: center;

    width: 78%;
    padding: 13px 20px;

    color: #062967;

    font-size: 17px;
    font-weight: 600;

    text-decoration: none;

    transition:
        color 0.3s ease,
        background 0.3s ease,
        padding-left 0.3s ease;
        font-family:'Times New Roman';
}


/* HOVER */

.header-submenu-link:hover {
    color: #e89a00;
    background: #f7f9fc;
    padding-left: 27px;
}


/* SHOW SUBMENU */

.header-dropdown:hover .header-submenu {
    opacity: 1;
    visibility: visible;

    transform: translateX(-50%) translateY(0);
}

.header-dropdown:hover .header-dropdown-icon {
    transform: rotate(180deg);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .header-submenu {
        position: static;

        transform: none;

        width: 100%;
        min-width: auto;

        margin-top: 5px;

        padding: 5px 0;

        border-top: none;
        border-left: 3px solid #e89a00;

        border-radius: 0;

        box-shadow: none;

        background: #f7f9fc;

        opacity: 1;
        visibility: visible;

        display: none;
    }

    .header-dropdown:hover .header-submenu {
        transform: none;
    }

    .header-submenu::before {
        display: none;
    }

    .header-submenu-link {
        padding: 12px 25px;
        font-size: 16px;
    }

    .header-submenu-link:hover {
        padding-left: 30px;
    }

}




.service-card-link {
    display: block;
    text-decoration: none !important;
    color: inherit;
}

.service-card-link:hover {
    text-decoration: none !important;
    color: inherit;
}

.service-card-link h3,
.service-card-link p {
    text-decoration: none !important;
}





/* =========================================
   MOBILE MENU
========================================= */

@media (max-width: 991px) {

    .header-main {
        position: relative;
        z-index: 9999;
    }

    .header-wrapper {
        position: relative;
    }

    .header-mobile-toggle {
        display: flex !important;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 5px;
        width: 45px;
        height: 45px;
        cursor: pointer;
        background: #ffffff;
        border: 1px solid #d9dfe8;
        border-radius: 8px;
        z-index: 10001;
    }

    .header-mobile-line {
        display: block;
        width: 23px;
        height: 3px;
        background: #0b2d6b;
        border-radius: 3px;
    }

    .header-navigation {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        height: auto !important;
        background: #ffffff !important;
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        z-index: 10000 !important;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    }

    .header-navigation.header-navigation-active {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .header-menu {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 10px 20px !important;
        background: #ffffff !important;
    }

    .header-menu-item {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .header-menu-link {
        display: block !important;
        width: 100% !important;
        padding: 15px 10px !important;
        color: #0b2d6b !important;
        text-decoration: none !important;
    }

    .header-menu-link.header-menu-active {
        color: #df9c13 !important;
    }

    .header-quote-button {
        display: none !important;
    }

    /* PROJECTS SUBMENU */

    .header-submenu {
        position: static !important;
        display: none !important;
        width: 100% !important;
        padding: 0 0 5px 15px !important;
        margin: 0 !important;
        background: #ffffff !important;
        box-shadow: none !important;
    }

    .header-dropdown:hover .header-submenu {
        display: none !important;
    }

    .header-dropdown.header-dropdown-active .header-submenu {
        display: block !important;
    }

    .header-submenu-link {
        display: block !important;
        padding: 12px 10px !important;
        color: #0b2d6b !important;
    }

}



@media(max-width:600px){
    .service-page-container {
    max-width: 328px !important;
}

.project-page-container {
    max-width: 328px !important;
}

.gallery-page-container {
    max-width: 328px !important;
}

.header-container {
    width: 100%;
    max-width: 340px !important;
   
}
}

@media (max-width: 1199px) {
.header-container {
    width: 100%;
    max-width: 703px;
   
}
}



/* =========================================
   STICKY HEADER
========================================= */

/* =========================================
   STICKY MAIN HEADER
========================================= */

.header-main {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
    width: 100%;
    background: #ffffff !important;
}



@media(max-width:600px){
    .about-page-vision-sec{
        padding-top:30px !important;
    }

    .contact-page-section-label {
   
    font-size: 12px;
   
}

.contact-page-title{
    padding-bottom:15px;
}

.service-page-title{
    padding-bottom:15px;
}

}


.contact-page-title{
    padding-bottom:20px;
}


.service-page-title{
    padding-bottom:20px;
}




/* =========================================
   FIXED / STICKY HEADER
========================================= */

.header-main {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;

    width: 100% !important;

    background: #ffffff !important;

    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.10);

    transition: all 0.3s ease;
}


/* Keep header content above everything */

/* .header-container {
    position: relative;
    z-index: 999999;
} */


/* Prevent page content from going underneath header */

/* body {
    margin: 0;
    padding-top: 90px;
} */