body {
    overflow-x: hidden;
}

.section-padding {
    padding-top: 7.5rem; /* 120px / 16px */
    padding-bottom: 7.5rem; /* 120px / 16px */
}

.section-padding-top {
    padding-top: 7.5rem;
}

.section-padding-bottom {
    padding-bottom: 7.5rem;
}

.upper {
    text-transform: uppercase;
}

/* .full-wrapper {
    position: relative;
} */

.section-title {
    margin-bottom: 60px;
}

.section-title .title {
    font-size: 2.25rem; /* 36px / 16px */
    margin-top: -0.3125rem; /* -5px / 16px */
}

.section-title .desc {
    font-size: 1.125rem; /* 18px / 16px */
    font-weight: 600;
}

img {
    max-width: 100%;
    height: auto;
    display: block; /* Ensures images don't have extra space below them */
}

.img-fix {
    width: 100%;
    max-height: 700px; /* Changed from height to max-height for better responsiveness */
    object-fit: cover;
}

/* ---------------------
Button-Styles
----------------------- */
.mouse-dir {
    overflow: hidden;
    position: relative;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s;
    z-index: 4;
    margin-bottom: -8px;
    border-radius: 30px;
    -moz-transition: 0.6s;
    -ms-transition: 0.6s;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -ms-border-radius: 30px;
    -o-border-radius: 30px;
}

.mouse-dir .dir-part {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: #0d6efd;
    -webkit-transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
    -o-transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
    transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
    -moz-transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
    -ms-transition: width 0.5s ease-in-out, height 0.5s ease-in-out;
}

.mouse-dir:hover .dir-part {
    width: 260%;
    height: 35.15625rem; /* 562.5px / 16px */
}

.button-dark {
    display: inline-block;
    width: 10.625rem; /* 170px / 16px */
    height: 3.75rem; /* 60px / 16px */
    background-color: #021a45;
    text-align: center;
    line-height: 3.75rem; /* 60px / 16px */
    font-size: 1.25rem; /* 20px / 16px */
    color: #ffffff;
    font-weight: 600;
}

.button-dark:hover {
    color: #021a45;
}

.button-primary.mouse-dir .dir-part,
.button-dark.mouse-dir .dir-part {
    background-color: #ffffff;
}

.button-orange,
.button-primary {
    display: inline-block;
    color: #ffffff;
    background-color: #0d6efd;
    padding: 1.125rem 2.5rem; /* 18px 40px / 16px */
    border: 0.0625rem solid #0d6efd; /* 1px / 16px */
    font-size: 1rem; /* 16px / 16px */
    font-weight: 600;
}

.button-primary:hover {
    color: #0d6efd;
}

.load-more,
.button-primary-trans {
    display: inline-block;
    color: #0d6efd;
    padding: 0.9375rem 2.5rem; /* 15px 40px / 16px */
    border: 0.0625rem solid #0d6efd; /* 1px / 16px */
    font-size: 1rem; /* 16px / 16px */
    font-weight: 600;
}

.button-primary-trans .icon {
    margin-right: 0.3125rem; /* 5px / 16px */
    display: inline-block;
}

.load-more:hover,
.button-primary-trans:hover {
    color: #ffffff;
}

.load-more {
    padding: 0.9375rem 2.375rem; /* 15px 38px / 16px */
}

.load-more i {
    margin-left: 0.3125rem; /* 5px / 16px */
    font-size: 0.875rem; /* 14px / 16px */
}

.portfolio-area .load-more {
    margin-top: 1.875rem; /* 30px / 16px */
}

.button-orange {
    padding: 0.9375rem 2.375rem; /* 15px 38px / 16px */
    border: 0.0625rem solid #0d6efd; /* 1px / 16px */
    background-color: #0d6efd;
}

.button-orange:hover {
    color: #0d6efd;
}

.button-orange .dir-part {
    background-color: #ffffff;
}

/*------------------------
02. Mainmenu-Area
--------------------------*/
.main_menu {
    position: fixed;
    width: 100%;
    height: 5rem; /* 80px / 16px */
    top: 0;
    left: 0;
    z-index: 999;
    border-bottom: 0.0625rem solid #eeeeee17; /* 1px / 16px */
    transition: all linear .3s;
}

.main_menu .navbar-nav {
    list-style: none;
    margin: 0;
    padding: 0;
}

.main_menu .navbar-nav li {
    display: inline-block;
    position: relative;
    /* margin-left: -5px; */
}

.main_menu .navbar-nav li {
    position: relative;
}

.main_menu .navbar-nav li a {
    position: relative;
    display: block;
    font-family: 'Poppins', sans-serif;
    font-size: 1rem; /* 16px / 16px */
    font-weight: 600;
    text-transform: capitalize;
    padding: 0rem !important;
    margin: 0rem 1.25rem; /* 20px / 16px */
    color: #fff;
    line-height: 5rem; /* 80px / 16px */
    background: none;
    transition: all linear .3s;
    -webkit-transition: all linear .3s;
    -moz-transition: all linear .3s;
    -ms-transition: all linear .3s;
    -o-transition: all linear .3s;
}

.main_menu .navbar-nav li:last-child a {
    margin-right: 0;
}

.main_menu .navbar-nav li .active,
.main_menu .navbar-nav li:hover>a {
    color: #0d6efd;
}

.menu_fix .navbar-nav li a {
    color: #021a45;
}

.main_menu .menu_icon {
    display: flex;
    margin: 0;
    padding: 0;
}

.main_menu .menu_icon li {
    list-style: none;
}

.main_menu .menu_icon li a {
    color: #fff;
    margin-left: 1.25rem; /* 20px / 16px */
    font-size: 1rem; /* 16px / 16px */
    transition: all linear .3s;
    -webkit-transition: all linear .3s;
    -moz-transition: all linear .3s;
    -ms-transition: all linear .3s;
    -o-transition: all linear .3s;
}

.main_menu .menu_icon li a:hover {
    color: #0d6efd;
}

.menu_fix .menu_icon li a {
    color: #021a45;
}

.main_menu .sub_menu {
    position: absolute;
    width: 15.625rem; /* 250px / 16px */
    top: 100%;
    left: 0;
    background: #fff;
    padding: 1.5625rem; /* 25px / 16px */
    border-radius: 0.625rem; /* 10px / 16px */
    transform: scaleY(0);
    transform-origin: top;
    transition: all linear .3s;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    box-shadow: rgba(100, 100, 111, 0.2) 0rem 0.4375rem 1.8125rem 0rem; /* 0px 7px 29px 0px / 16px */
    z-index: 999;
}

.main_menu .sub_menu>li>a {
    color: #021a45;
    margin: 0;
    line-height: 0;
}

.main_menu .navbar-nav .nav-item:hover .sub_menu {
    transform: scale(1);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
}

/* -----------------------
03. Header-Area
------------------------- */
.header-area {
    padding-top: 20rem; /* 320px / 16px */
    padding-bottom: 13.125rem; /* 210px / 16px */
    background: url('../images/home-slider-2.jpg') no-repeat scroll top center/cover;
    position: relative;
    z-index: 1;
    overflow: hidden;
    min-height: calc(100vh - 2.5rem); /* 40px / 16px */
    display: flex;
    align-items: center;
}

#particles-js {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
    width: 100%;
    display: block;
}

#header-video {
    position: absolute !important;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1;
}

#header-video iframe {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale(1.2, 1.2);
    height: 100%;
}

.slide-inner:after,
.site-header:after,
.header-area:after {
    content: "";
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.6;
    z-index: -1;
}

.header-text .typer-title {
    color: #fdfdfd;
    font-weight: 600;
    font-size: 1.5rem; /* 24px / 16px */
}

.header-text .title {
    font-size: 4.75rem; /* 76px / 16px */
    color: #ffffff;
}

.header-text .desc {
    font-size: 1.5rem; /* 24px / 16px */
    line-height: 2.375rem; /* 38px / 16px */
    color: #ffffff;
    margin-bottom: 3.125rem; /* 50px / 16px */
}

.play-buttons {
    position: absolute;
    right: 0.625rem; /* 10px / 16px */
    bottom: 0rem;
    z-index: 9;
}

.play-buttons button {
    border: none;
    background: none;
    color: #ffffff;
    width: 1.25rem; /* 20px / 16px */
    height: 1.25rem; /* 20px / 16px */
    line-height: 1.25rem; /* 20px / 16px */
    text-align: center;
    margin: 0.9375rem 0.3125rem; /* 15px 5px / 16px */
}

/* -----------------------
04. Service-Area
------------------------- */
.single-service .title {
    font-size: 1.375rem; /* 22px / 16px */
    line-height: 1.875rem; /* 30px / 16px */
    margin-bottom: 1.5625rem; /* 25px / 16px */
}    padding-left: 25px;
    position: relative;
}

.single-service .title:before {
    content: "";
    background: #0d6efd;
    width: 0.9375rem; /* 15px / 16px */
    height: 0.1875rem; /* 3px / 16px */
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

/* --------------------
05. About-Area
---------------------- */
.about-image {
    background: linear-gradient(135deg, #f3f7ff 0%, #e8f2ff 100%);
    overflow: hidden;
    text-align: center;
    margin-right: 4.375rem; /* 70px / 16px */
    border-radius: 1.25rem; /* 20px / 16px */
    position: relative;
    box-shadow: 0 0.9375rem 2.1875rem rgba(13, 110, 253, 0.1); /* 0 15px 35px / 16px */
    transition: all 0.3s ease;
}

.about-image:hover {
    transform: translateY(-0.3125rem); /* -5px / 16px */
    box-shadow: 0 1.5625rem 3.125rem rgba(13, 110, 253, 0.15); /* 0 25px 50px / 16px */
}

.about-image img {
    border-radius: 0.9375rem; /* 15px / 16px */
    transition: transform 0.3s ease;
}

.about-image:hover img {
    transform: scale(1.02);
}

.about-text .title {
    font-size: 2.25rem; /* 36px / 16px */
    margin-bottom: 0.9375rem; /* 15px / 16px */
    color: #333;
    font-weight: 700;
    line-height: 1.2;
    position: relative;
}

.about-text .title:after {
    content: '';
    position: absolute;
    bottom: -0.5rem; /* -8px / 16px */
    left: 0;
    width: 3.125rem; /* 50px / 16px */
    height: 0.1875rem; /* 3px / 16px */
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    border-radius: 0.125rem; /* 2px / 16px */
}

.about-text .sub-title {
    font-size: 1.25rem; /* 20px / 16px */
    font-weight: 600;
    margin-bottom: 1.875rem; /* 30px / 16px */
    color: #0d6efd;
}

.about-text .desc {
    margin-bottom: 3.125rem; /* 50px / 16px */
    font-size: 1rem; /* 16px / 16px */
    line-height: 1.8;
    color: #666;
}

.about-text .desc p {
    margin-bottom: 1.25rem; /* 20px / 16px */
}

.about-text .desc p:last-child {
    margin-bottom: 0;
}

/* Quality Features Section */
.quality-features-section {
    margin-top: 5rem; /* 80px / 16px */
    padding-top: 3.75rem; /* 60px / 16px */
    border-top: 0.0625rem solid #f0f0f0; /* 1px / 16px */
}

.quality-title {
    font-size: 2rem; /* 32px / 16px */
    font-weight: 700;
    color: #333;
    margin-bottom: 0.9375rem; /* 15px / 16px */
    position: relative;
}

.quality-title:after {
    content: '';
    position: absolute;
    bottom: -0.625rem; /* -10px / 16px */
    left: 50%;
    transform: translateX(-50%);
    width: 3.75rem; /* 60px / 16px */
    height: 0.1875rem; /* 3px / 16px */
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    border-radius: 0.125rem; /* 2px / 16px */
}

.quality-subtitle {
    font-size: 1rem; /* 16px / 16px */
    color: #666;
    margin-bottom: 0;
}

.quality-feature-card {
    background: #fff;
    border-radius: 0.9375rem; /* 15px / 16px */
    padding: 2.5rem 1.5625rem; /* 40px 25px / 16px */
    text-align: center;
    box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.08); /* 0 10px 30px / 16px */
    transition: all 0.3s ease;
    border: 0.0625rem solid #f8f9fa; /* 1px / 16px */
    height: 100%;
    position: relative;
    overflow: hidden;
}

.quality-feature-card:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0.25rem; /* 4px / 16px */
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    transform: scaleX(0);
    transition: transform 0.3s ease;
}

.quality-feature-card:hover {
    transform: translateY(-0.625rem); /* -10px / 16px */
    box-shadow: 0 1.25rem 2.5rem rgba(0, 0, 0, 0.15); /* 0 20px 40px / 16px */
}

.quality-feature-card:hover:before {
    transform: scaleX(1);
}

.feature-icon {
    width: 5rem; /* 80px / 16px */
    height: 5rem; /* 80px / 16px */
    margin: 0 auto 1.5625rem; /* 25px / 16px */
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: all 0.3s ease;
}

.feature-icon i {
    font-size: 2rem; /* 32px / 16px */
    color: #fff;
    transition: all 0.3s ease;
}

.quality-feature-card:hover .feature-icon {
    transform: scale(1.1);
    box-shadow: 0 0.625rem 1.5625rem rgba(13, 110, 253, 0.3); /* 0 10px 25px / 16px */
}

.feature-title {
    font-size: 1.25rem; /* 20px / 16px */
    font-weight: 600;
    color: #333;
    margin-bottom: 0.9375rem; /* 15px / 16px */
    transition: color 0.3s ease;
}

.quality-feature-card:hover .feature-title {
    color: #0d6efd;
}

.feature-desc {
    font-size: 0.9375rem; /* 15px / 16px */
    color: #666;
    line-height: 1.6;
    margin-bottom: 0;
}

/* Responsive Design for Quality Features */
@media (max-width: 48rem) { /* 768px / 16px */
    .quality-features-section {
        margin-top: 3.75rem; /* 60px / 16px */
        padding-top: 2.5rem; /* 40px / 16px */
    }

    .quality-title {
        font-size: 1.75rem; /* 28px / 16px */
    }

    .quality-feature-card {
        padding: 1.875rem 1.25rem; /* 30px 20px / 16px */
        margin-bottom: 1.25rem; /* 20px / 16px */
    }

    .feature-icon {
        width: 4.375rem; /* 70px / 16px */
        height: 4.375rem; /* 70px / 16px */
        margin-bottom: 1.25rem; /* 20px / 16px */
    }

    .feature-icon i {
        font-size: 1.75rem; /* 28px / 16px */
    }

    .feature-title {
        font-size: 1.125rem; /* 18px / 16px */
    }
}

@media (max-width: 36rem) { /* 576px / 16px */
    .quality-feature-card {
        padding: 1.5625rem 0.9375rem; /* 25px 15px / 16px */
    }

    .feature-icon {
        width: 3.75rem; /* 60px / 16px */
        height: 3.75rem; /* 60px / 16px */
    }

    .feature-icon i {
        font-size: 1.5rem; /* 24px / 16px */
    }
}

/* Responsive Design for About Section */
@media (max-width: 61.9375rem) { /* 991px / 16px */
    .about-image {
        margin-right: 0;
        margin-bottom: 2.5rem; /* 40px / 16px */
    }
}

@media (max-width: 48rem) { /* 768px / 16px */
    .about-text .title {
        font-size: 1.75rem; /* 28px / 16px */
        text-align: center;
    }

    .about-text .title:after {
        left: 50%;
        transform: translateX(-50%);
    }

    .about-text .sub-title {
        font-size: 1.125rem; /* 18px / 16px */
        text-align: center;
    }

    .about-text .desc {
        text-align: center;
        font-size: 0.9375rem; /* 15px / 16px */
    }

    .about-image {
        margin-bottom: 1.875rem; /* 30px / 16px */
    }
}

@media (max-width: 36rem) { /* 576px / 16px */
    .about-text .title {
        font-size: 1.5rem; /* 24px / 16px */
    }

    .about-text .sub-title {
        font-size: 1rem; /* 16px / 16px */
    }

    .about-text .desc {
        font-size: 0.875rem; /* 14px / 16px */
        line-height: 1.6;
    }
}

/* --------------------
06. Portfolio-Area
---------------------- */
/* Modern Portfolio Section Styles */
.modern-section-title {
    margin-bottom: 3.75rem; /* 60px / 16px */
}

.portfolio-main-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 1.25rem; /* 20px / 16px */
    position: relative;
}

.portfolio-main-title::after {
    content: '';
    position: absolute;
    bottom: -0.625rem; /* -10px / 16px */
    left: 50%;
    transform: translateX(-50%);
    width: 3.75rem; /* 60px / 16px */
    height: 0.25rem; /* 4px / 16px */
    background: #0d6efd;
    border-radius: 0.125rem; /* 2px / 16px */
}

.portfolio-subtitle {
    font-size: 1.1rem;
    color: #7f8c8d;
    line-height: 1.8;
    max-width: 600px;
    margin: 0 auto;
}

.filter-menu-wrapper {
    margin-bottom: 3.125rem; /* 50px / 16px */
    display: flex;
    justify-content: center;
}

.modern-filter-menu {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.9375rem; /* 15px / 16px */
    margin: 0;
    padding: 0;
}

.filter-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem; /* 8px / 16px */
    padding: 0.875rem 1.75rem; /* 14px 28px / 16px */
    background: linear-gradient(45deg, #ffffff, #f8f9fa);
    border: 0.125rem solid #e9ecef; /* 2px / 16px */
    border-radius: 3.125rem; /* 50px / 16px */
    cursor: pointer;
    transition: all 0.4s ease;
    font-weight: 600;
    color: #495057 !important;
    box-shadow: 0 0.375rem 1.25rem rgba(0,0,0,0.08); /* 0 6px 20px / 16px */
    text-decoration: none;
    font-size: 0.9375rem; /* 15px / 16px */
    letter-spacing: 0.03125rem; /* 0.5px / 16px */
    position: relative;
    overflow: hidden;
    min-width: 7.5rem; /* 120px / 16px */
    text-align: center;
}

.filter-btn:before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    transition: all 0.4s ease;
    z-index: 0;
}

.filter-btn:hover:before {
    left: 0;
}

.filter-btn .filter-icon,
.filter-btn .filter-text {
    position: relative;
    z-index: 1;
    transition: all 0.3s ease;
    color: inherit;
    opacity: 1;
    visibility: visible;
}

.filter-btn:hover {
    border-color: #0d6efd;
    color: #ffffff;
    transform: translateY(-0.25rem); /* -4px / 16px */
    box-shadow: 0 0.75rem 1.875rem rgba(13, 110, 253, 0.25); /* 0 12px 30px / 16px */
}

.filter-btn:hover .filter-icon,
.filter-btn:hover .filter-text {
    color: #ffffff;
}

.filter-btn.active {
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    border-color: #0d6efd;
    color: #ffffff;
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(13, 110, 253, 0.35);
}

.filter-btn.active:before {
    left: 0;
}

.filter-btn.active .filter-icon,
.filter-btn.active .filter-text {
    color: #ffffff;
}

.filter-icon {
    font-size: 14px;
}

.modern-portfolio-wrapper {
    margin-top: 40px;
}

.portfolio-item-wrapper {
    margin-bottom: 40px;
}

.modern-portfolio-card {
    background: #ffffff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    transition: all 0.4s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.modern-portfolio-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 50px rgba(0,0,0,0.15);
}

.modern-portfolio-image {
    position: relative;
    overflow: hidden;
    margin: 0;
    height: 280px;
}

.modern-portfolio-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.portfolio-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(13, 110, 253, 0.9) 0%, rgba(13, 110, 253, 0.7) 100%);
    opacity: 0;
    transition: all 0.4s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.modern-portfolio-card:hover .portfolio-overlay {
    opacity: 1;
}

.modern-portfolio-card:hover .modern-portfolio-image img {
    transform: scale(1.1);
}

.portfolio-actions {
    display: flex;
    gap: 15px;
}

.portfolio-action-btn {
    width: 50px;
    height: 50px;
    background: rgba(255,255,255,0.9);
    border: 2px solid rgba(255,255,255,0.8);
    border-radius: 50%;
    color: #0d6efd;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px);
    font-size: 16px;
    font-weight: 600;
}

.portfolio-action-btn:hover {
    background: #ffffff;
    border-color: #ffffff;
    transform: scale(1.1);
    color: #0d6efd;
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

.modern-portfolio-content {
    padding: 25px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.portfolio-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    flex-wrap: wrap;
    gap: 10px;
}

.portfolio-category {
    background: #0d6efd;
    color: white;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.portfolio-client {
    color: #7f8c8d;
    font-size: 12px;
    font-weight: 500;
}

.portfolio-title {
    margin: 0 0 15px;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.4;
}

.portfolio-title a {
    color: #2c3e50;
    text-decoration: none;
    transition: color 0.3s ease;
}

.portfolio-title a:hover {
    color: #0d6efd;
}

.portfolio-description {
    color: #7f8c8d;
    line-height: 1.7;
    margin-bottom: 20px;
    flex-grow: 1;
}

.portfolio-footer {
    margin-top: auto;
}

.portfolio-read-more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #0d6efd;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s ease;
}

.portfolio-read-more:hover {
    color: #0b5ed7;
    gap: 12px;
}

.portfolio-read-more i {
    transition: transform 0.3s ease;
}

.portfolio-read-more:hover i {
    transform: translateX(3px);
}

/* Responsive Design for Modern Portfolio */
@media (max-width: 1199px) {
    .portfolio-main-title {
        font-size: 2.2rem;
    }

    .modern-portfolio-image {
        height: 260px;
    }
}

@media (max-width: 61.9375rem) { /* 991px / 16px */
    .portfolio-main-title {
        font-size: 2rem;
    }

    .portfolio-subtitle {
        font-size: 1rem;
    }

    .modern-filter-menu {
        gap: 0.625rem; /* 10px / 16px */
    }

    .filter-btn {
        padding: 0.625rem 1.25rem; /* 10px 20px / 16px */
        font-size: 0.875rem; /* 14px / 16px */
    }

    .modern-portfolio-image {
        height: 15rem; /* 240px / 16px */
    }

    .modern-portfolio-content {
        padding: 1.25rem; /* 20px / 16px */
    }
}

@media (max-width: 47.9375rem) { /* 767px / 16px */
    .portfolio-main-title {
        font-size: 1.8rem;
    }

    .portfolio-subtitle {
        font-size: 0.95rem;
        line-height: 1.6;
    }

    .modern-filter-menu {
        flex-direction: column;
        align-items: center;
        gap: 0.5rem; /* 8px / 16px */
    }

    .filter-btn {
        padding: 0.5rem 1rem; /* 8px 16px / 16px */
        font-size: 0.8125rem; /* 13px / 16px */
        min-width: 7.5rem; /* 120px / 16px */
        justify-content: center;
    }

    .modern-portfolio-image {
        height: 13.75rem; /* 220px / 16px */
    }

    .portfolio-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem; /* 8px / 16px */
    }

    .portfolio-title {
        font-size: 1.2rem;
    }

    .portfolio-actions {
        gap: 0.625rem; /* 10px / 16px */
    }

    .portfolio-action-btn {
        width: 2.8125rem; /* 45px / 16px */
        height: 2.8125rem; /* 45px / 16px */
    }
}

@media (max-width: 35.9375rem) { /* 575px / 16px */
    .portfolio-main-title {
        font-size: 1.6rem;
    }

    .portfolio-main-title::after {
        width: 2.5rem; /* 40px / 16px */
        height: 0.1875rem; /* 3px / 16px */
    }

    .modern-section-title {
        margin-bottom: 2.5rem; /* 40px / 16px */
    }

    .filter-menu-wrapper {
        margin-bottom: 1.875rem; /* 30px / 16px */
    }

    .portfolio-item-wrapper {
        margin-bottom: 1.875rem; /* 30px / 16px */
    }

    .modern-portfolio-content {
        padding: 0.9375rem; /* 15px / 16px */
    }

    .portfolio-title {
        font-size: 1.1rem;
        margin-bottom: 0.625rem; /* 10px / 16px */
    }

    .portfolio-description {
        font-size: 0.875rem; /* 14px / 16px */
        margin-bottom: 0.9375rem; /* 15px / 16px */
    }

    .portfolio-read-more {
        font-size: 0.8125rem; /* 13px / 16px */
    }
}

/* Legacy Portfolio Styles (for backward compatibility) */
.filter-menu {
    list-style: none;
    margin: -0.9375rem 0 1.875rem 0; /* -15px 0 30px 0 / 16px */
    padding: 0;
    text-align: center;
    width: 100%;
}

.filter-menu li {
    display: inline-block;
    font-size: 0.9375rem; /* 15px / 16px */
    color: #0d6efd;
    border: 0.0625rem solid #0d6efd; /* 1px / 16px */
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    padding: 0.625rem 1.875rem; /* 10px 30px / 16px */
    cursor: pointer;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    border-radius: 1.875rem; /* 30px / 16px */
    -moz-transition: 0.3s;
    -ms-transition: 0.3s;
}

.filter-menu li:hover,
.filter-menu li.active {
    background: #0d6efd;
    color: #fff;
}

.portfolio-wrapper {
    margin-bottom: -1.875rem; /* -30px / 16px */
}

.single-portfolio {
    position: relative;
    overflow: hidden;
    z-index: 1;
    margin-bottom: 1.875rem; /* 30px / 16px */
    border-radius: 0.625rem; /* 10px / 16px */
}

.single-portfolio img {
    width: 100%;
}

.single-portfolio .portfolio-content {
    position: absolute;
    left: 100%;
    top: 100%;
    width: 100%;
    height: 100%;
    z-index: 2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    padding: 2.1875rem; /* 35px / 16px */
}

blockquote {
    border-left: 0.625rem solid #0d6efd; /* 10px / 16px */
    background-color: #f3f7ff;
    border-radius: 0.625rem; /* 10px / 16px */
}

.single-portfolio .portfolio-content:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #0d6efd;
    opacity: 0.7;
    z-index: -1;
}

.double .single-portfolio .portfolio-content {
    padding: 5rem; /* 80px / 16px */
}

.single-portfolio .portfolio-content .icon {
    width: 2.5rem; /* 40px / 16px */
    height: 2.5rem; /* 40px / 16px */
    line-height: 2.5rem; /* 40px / 16px */
    color: #ffffff;
    font-size: 2.25rem; /* 36px / 16px */
    margin-bottom: 1.25rem; /* 20px / 16px */
}

.single-portfolio .portfolio-content .title {
    font-size: 1.5rem; /* 24px / 16px */
    color: #ffffff;
    font-weight: 600;
}

.single-portfolio .portfolio-content .title a {
    color: #ffffff;
}

.single-portfolio .portfolio-content .desc {
    font-size: 1rem; /* 16px / 16px */
    color: #fffefe;
    font-weight: 600;
}

/* ----------------------
07. Skill-Area
----------------------- */
.skills-area .single-image {
    padding-left: 4.375rem; /* 70px / 16px */
}

.skills-area .single-image img {
    border: 0.0625rem solid #eee; /* 1px / 16px */
    border-radius: 0.625rem; /* 10px / 16px */
    -webkit-border-radius: 0.625rem; /* 10px / 16px */
    -moz-border-radius: 0.625rem; /* 10px / 16px */
    -ms-border-radius: 0.625rem; /* 10px / 16px */
    -o-border-radius: 0.625rem; /* 10px / 16px */
}

.skills {
    margin-bottom: -3.125rem; /* -50px / 16px */
}

.bar_group {
    text-align: left;
    position: relative;
    margin-bottom: 3.125rem; /* 50px / 16px */
}

.bar_group__bar.thick {
    width: 0%;
    height: 0.9375rem; /* 15px / 16px */
    background: #558bff;
    -webkit-transition: width 1s;
    -o-transition: width 1s;
    transition: width 1s;
    -moz-transition: width 1s;
    -ms-transition: width 1s;
}

.bar_group__bar.thick:before {
    display: block;
    content: '';
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 0.9375rem; /* 15px / 16px */
    background: #e3e7ea;
    z-index: -1;
    bottom: -0.625rem; /* -10px / 16px */
    border-radius: 1.875rem; /* 30px / 16px */
}

.b_label,
.bar_label_min,
.bar_label_max,
.b_tooltip span {
    color: #000a2d;
    font-size: inherit;
    font-weight: 600;
}

.b_label {
    text-transform: uppercase;
    font-size: 0.9375rem; /* 15px / 16px */
    font-weight: 700;
    letter-spacing: 0.125rem; /* 2px / 16px */
}

.bar_group .bar_label_max,
.bar_group .bar_label_min {
    position: absolute;
    bottom: -0.625rem; /* -10px / 16px */
    line-height: 0.9375rem; /* 15px / 16px */
}

.bar_group .bar_label_max {
    right: 1.25rem; /* 20px / 16px */
}

.bar_group .bar_label_min {
    left: 1.25rem; /* 20px / 16px */
}

.bar_group .b_tooltip {
    position: absolute;
    top: -0.3125rem; /* -5px / 16px */
    right: 0;
}

.bar_group .b_tooltip span {
    font-size: 1rem; /* 16px / 16px */
    line-height: 1.625rem; /* 26px / 16px */
    color: #282828;
    font-weight: 700;
}

.bar_group .b_tooltip span:after {
    content: "%";
    position: relative;
    top: 0.1875rem; /* 3px / 16px */
    display: inline-block;
    line-height: 2.25rem; /* 36px / 16px */
}

.bar_group .elastic {
    background: #558bff;
    -webkit-transition-timing-function: cubic-bezier(0.5, 0.25, 0.375, 1.335);
    -o-transition-timing-function: cubic-bezier(0.5, 0.25, 0.375, 1.335);
    transition-timing-function: cubic-bezier(0.5, 0.25, 0.375, 1.335);
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -ms-border-radius: 30px;
    -o-border-radius: 30px;
}

.bar_group .title {
    font-size: 1rem; /* 16px / 16px */
    line-height: 1.625rem; /* 26px / 16px */
    color: #282828;
    font-weight: 400;
    margin-bottom: 0.625rem; /* 10px / 16px */
}

.bar_group .sub-title {
    font-size: 0.875rem; /* 14px / 16px */
    color: #6e7c90;
}

/* ----------------------
08. Experience-Area
----------------------- */
.experience-area .single-image {
    padding-right: 4.375rem; /* 70px / 16px */
}

.experience-area .single-image img {
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
}

.experience-text .title {
    font-size: 2.25rem; /* 36px / 16px */
    line-height: 2.875rem; /* 46px / 16px */
}

.experience-text .desc {
    margin-bottom: 3.125rem; /* 50px / 16px */
}

.icon-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 0.9375rem; /* 15px / 16px */
}

.icon-info .icon {
    width: 3.125rem; /* 50px / 16px */
    height: 3.125rem; /* 50px / 16px */
    background-color: #0d6efd;
    font-size: 1.25rem; /* 20px / 16px */
    line-height: 3.125rem; /* 50px / 16px */
    text-align: center;
    margin-right: 0.9375rem; /* 15px / 16px */
    color: #ffffff;
    border-radius: 50%;
}

.icon-info h6 {
    margin-bottom: 0rem; /* 0px / 16px */
    font-size: 1rem; /* 16px / 16px */
}

.icon-info h6 a {
    color: #021a45;
}

.icon-info h6 a:hover {
    text-decoration: underline;
    color: rgb(26, 80, 230)
}

/* ----------------------
09. Testimonial-Area
----------------------- */
.testimonial-slider {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
}

.testimonial-slider .slick-list {
    margin-left: -0.9375rem; /* -15px / 16px */
    margin-right: -0.9375rem; /* -15px / 16px */
}

.testimonial-slider .single-testimonial {
    background-color: #f3f7ff;
    padding: 3.125rem; /* 50px / 16px */
    margin: 0 0.9375rem; /* 0 15px / 16px */
    /* border: 0.0625rem solid #eee; */ /* 1px / 16px */
    position: relative;
    z-index: 1;
    border-radius: 0.625rem; /* 10px / 16px */
}

.testimonial-slider .single-testimonial .quote {
    background-color: #0d6efd;
    width: 3.125rem; /* 50px / 16px */
    height: 3.125rem; /* 50px / 16px */
    line-height: 3.125rem; /* 50px / 16px */
    text-align: center;
    color: #ffffff;
    float: left;
    margin-right: 1.5625rem; /* 25px / 16px */
    border-radius: 50%;
}

.testimonial-slider .single-testimonial .testimonial-header {
    margin-bottom: 2.5rem; /* 40px / 16px */
}

.testimonial-slider .single-testimonial .content p:before,
.testimonial-slider .single-testimonial .content p:after {
    content: '"';
    display: inline-block;
}

.testimonial-slider .single-testimonial .title {
    font-size: 1.375rem; /* 22px / 16px */
    margin-bottom: 0.625rem; /* 10px / 16px */
}

.testimonial-slider .single-testimonial .position {
    font-size: 0.875rem; /* 14px / 16px */
    font-weight: 400;
}

/* ---------------------------
10. Contact-Form-Area
--------------------------- */
.contact-form {
    margin-top: 0.5rem; /* 8px / 16px */
.input-box {
    padding: 1.5rem 1.875rem; /* 24px 30px / 16px */
    width: 100%;
}   background-color: #ffffff;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    border: 0.0625rem solid #e3e7ea; /* 1px / 16px */
    outline: none;
    color: #282828;
    -moz-transition: 0.3s;
    -ms-transition: 0.3s;
}

.input-box:focus {
    -webkit-box-shadow: 1rem 1rem 2rem 0 rgba(0, 0, 0, 0.05); /* 16px 16px 32px / 16px */
    box-shadow: 1rem 1rem 2rem 0 rgba(0, 0, 0, 0.05); /* 16px 16px 32px / 16px */
    border: 0.0625rem solid #0d6efd; /* 1px / 16px */
}

.contact-form .input-box {
    margin-bottom: 1.875rem; /* 30px / 16px */
    line-height: 1.625rem; /* 26px / 16px */
    border-radius: 0.3125rem; /* 5px / 16px */
    resize: none;
}

.contact-form .form-double:after {
    clear: both;
    display: block;
    content: "";
}

.contact-form .form-double .form-box {
    width: calc(50% - 0.9375rem); /* 15px / 16px */
    float: left;
    margin-right: 1.875rem; /* 30px / 16px */
}

.contact-form .form-double .form-box.left {
    margin-right: 0;
}

.form-box {
    position: relative;
    line-height: 0rem; /* 0px / 16px */
}

.form-box button {
    line-height: 1.625rem; /* 26px / 16px */
}

.form-box .icon {
    position: absolute;
    right: 0.9375rem; /* 15px / 16px */
    top: 0.9375rem; /* 15px / 16px */
    width: 2.5rem; /* 40px / 16px */
    height: 2.5rem; /* 40px / 16px */
    line-height: 2.5rem; /* 40px / 16px */
    text-align: center;
    border-radius: 6.25rem; /* 100px / 16px */
    color: #e3e7ea;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
}

.contact-form ::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #282828;
}

.contact-form ::-moz-placeholder {
    /* Firefox 19+ */
    color: #282828;
}

.contact-form :-ms-input-placeholder {
    /* IE 10+ */
    color: #282828;
}

.contact-form :-moz-placeholder {
    /* Firefox 18- */
    color: #282828;
}

/* ----------------------
11. Modern Blog-Area
------------------------ */

/* Modern Blog Section Title */
.modern-blog-section-title {
    margin-bottom: 3.75rem; /* 60px / 16px */
}

.blog-main-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 1.25rem; /* 20px / 16px */
    position: relative;
}

.blog-main-title::after {
    content: '';
    position: absolute;
    bottom: -0.625rem; /* -10px / 16px */
    left: 50%;
    transform: translateX(-50%);
    width: 3.75rem; /* 60px / 16px */
    height: 0.25rem; /* 4px / 16px */
    background: #0d6efd;
    border-radius: 0.125rem; /* 2px / 16px */
}

.blog-subtitle {
    font-size: 1.1rem;
    color: #7f8c8d;
    line-height: 1.8;
    max-width: 600px;
    margin: 0 auto;
}

/* Modern Blog Slider */
.modern-blog-slider {
    margin-top: 2.5rem; /* 40px / 16px */
}

.modern-blog-slider .slick-list {
    margin-left: -0.9375rem; /* -15px / 16px */
    margin-right: -0.9375rem; /* -15px / 16px */
    padding: 1.25rem 0; /* 20px / 16px */
}

.modern-blog-slider .modern-blog-card {
    margin: 0 0.9375rem; /* 15px / 16px */
}

/* Modern Blog Card */
.modern-blog-card {
    background: #ffffff;
    border-radius: 1.25rem; /* 20px / 16px */
    overflow: hidden;
    box-shadow: 0 0.625rem 1.875rem rgba(0,0,0,0.1); /* 0 10px 30px / 16px */
    transition: all 0.4s ease;
    height: auto;
    margin-bottom: 1.875rem; /* 30px / 16px */
}

.modern-blog-card:hover {
    transform: translateY(-0.625rem); /* -10px / 16px */
    box-shadow: 0 1.25rem 3.125rem rgba(0,0,0,0.15); /* 0 20px 50px / 16px */
}

/* Modern Blog Image */
.modern-blog-image {
    position: relative;
    overflow: hidden;
    margin: 0;
    height: 17.5rem; /* 280px / 16px */
}

.modern-blog-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.modern-blog-card:hover .modern-blog-image img {
    transform: scale(1.1);
}

/* Blog Overlay */
.blog-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
    opacity: 0;
    transition: all 0.4s ease;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1.25rem; /* 20px / 16px */
}

.modern-blog-card:hover .blog-overlay {
    opacity: 1;
}

.blog-category-badge {
    background: #0d6efd;
    color: white;
    padding: 0.5rem 1rem; /* 8px 16px / 16px */
    border-radius: 1.5625rem; /* 25px / 16px */
    font-size: 0.75rem; /* 12px / 16px */
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03125rem; /* 0.5px / 16px */
    backdrop-filter: blur(0.625rem); /* 10px / 16px */
}

.blog-date-badge {
    background: rgba(255,255,255,0.9);
    color: #2c3e50;
    padding: 0.5rem 1rem; /* 8px 16px / 16px */
    border-radius: 1.5625rem; /* 25px / 16px */
    font-size: 0.75rem; /* 12px / 16px */
    font-weight: 600;
    backdrop-filter: blur(0.625rem); /* 10px / 16px */
}

/* Modern Blog Content */
.modern-blog-content {
    padding: 1.875rem; /* 30px / 16px */
}

.blog-meta-info {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9375rem; /* 15px / 16px */
    margin-bottom: 1.25rem; /* 20px / 16px */
    padding-bottom: 0.9375rem; /* 15px / 16px */
    border-bottom: 0.0625rem solid #f1f3f4; /* 1px / 16px */
}

.blog-meta-item {
    display: flex;
    align-items: center;
    gap: 0.375rem; /* 6px / 16px */
    color: #7f8c8d;
    font-size: 0.8125rem; /* 13px / 16px */
    font-weight: 500;
}

.blog-meta-item i {
    color: #0d6efd;
    font-size: 0.75rem; /* 12px / 16px */
}

.blog-card-title {
    margin: 0 0 0.9375rem; /* 15px / 16px */
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.4;
}

.blog-card-title a {
    color: #2c3e50;
    text-decoration: none;
    transition: color 0.3s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-card-title a:hover {
    color: #0d6efd;
}

.blog-excerpt {
    color: #7f8c8d;
    line-height: 1.7;
    margin-bottom: 1.5625rem; /* 25px / 16px */
}

.blog-excerpt p {
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-footer {
    padding-top: 0.9375rem; /* 15px / 16px */
    border-top: 0.0625rem solid #f1f3f4; /* 1px / 16px */
}

.blog-read-more {
    display: inline-flex;
    align-items: center;
    gap: 0.625rem; /* 10px / 16px */
    color: #0d6efd;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.875rem; /* 14px / 16px */
    transition: all 0.3s ease;
    padding: 0.75rem 1.5rem; /* 12px 24px / 16px */
    border: 0.125rem solid #0d6efd; /* 2px / 16px */
    border-radius: 3.125rem; /* 50px / 16px */
    background: transparent;
}

.blog-read-more:hover {
    background: #0d6efd;
    color: white;
    gap: 0.9375rem; /* 15px / 16px */
    transform: translateY(-0.125rem); /* -2px / 16px */
    box-shadow: 0 0.3125rem 0.9375rem rgba(102, 126, 234, 0.3); /* 0 5px 15px / 16px */
}

.blog-read-more i {
    transition: transform 0.3s ease;
}

.blog-read-more:hover i {
    transform: translateX(3px);
}

/* Responsive Design for Modern Blog */
@media (max-width: 74.9375rem) { /* 1199px / 16px */
    .blog-main-title {
        font-size: 2.2rem;
    }

    .modern-blog-image {
        height: 16.25rem; /* 260px / 16px */
    }
}

@media (max-width: 61.9375rem) { /* 991px / 16px */
    .blog-main-title {
        font-size: 2rem;
    }

    .blog-subtitle {
        font-size: 1rem;
    }

    .modern-blog-image {
        height: 15rem; /* 240px / 16px */
    }

    .modern-blog-content {
        padding: 1.5625rem; /* 25px / 16px */
    }

    .blog-meta-info {
        gap: 0.625rem; /* 10px / 16px */
    }
}

@media (max-width: 47.9375rem) { /* 767px / 16px */
    .blog-main-title {
        font-size: 1.8rem;
    }

    .blog-subtitle {
        font-size: 0.95rem;
        line-height: 1.6;
    }

    .modern-blog-image {
        height: 13.75rem; /* 220px / 16px */
    }

    .modern-blog-content {
        padding: 1.25rem; /* 20px / 16px */
    }

    .blog-meta-info {
        flex-direction: column;
        gap: 0.5rem; /* 8px / 16px */
    }

    .blog-card-title {
        font-size: 1.2rem;
    }

    .blog-read-more {
        padding: 0.625rem 1.25rem; /* 10px 20px / 16px */
        font-size: 0.8125rem; /* 13px / 16px */
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 35.9375rem) { /* 575px / 16px */
    .blog-main-title {
        font-size: 1.6rem;
    }

    .blog-main-title::after {
        width: 2.5rem; /* 40px / 16px */
        height: 0.1875rem; /* 3px / 16px */
    }

    .modern-blog-section-title {
        margin-bottom: 2.5rem; /* 40px / 16px */
    }

    .modern-blog-image {
        height: 12.5rem; /* 200px / 16px */
    }

    .modern-blog-content {
        padding: 0.9375rem; /* 15px / 16px */
    }

    .blog-card-title {
        font-size: 1.1rem;
        margin-bottom: 0.625rem; /* 10px / 16px */
    }

    .blog-excerpt {
        font-size: 0.875rem; /* 14px / 16px */
        margin-bottom: 1.25rem; /* 20px / 16px */
    }

    .blog-meta-item {
        font-size: 0.75rem; /* 12px / 16px */
    }

    .blog-overlay {
        padding: 0.9375rem; /* 15px / 16px */
    }

    .blog-category-badge,
    .blog-date-badge {
        padding: 0.375rem 0.75rem; /* 6px 12px / 16px */
        font-size: 0.6875rem; /* 11px / 16px */
    }
}

/* Legacy Blog Styles (for backward compatibility) */
/* ----------------------
11. Blog-Area
------------------------ */
.blog-slider .slick-list {
    margin-left: -0.9375rem; /* -15px / 16px */
    margin-right: -0.9375rem; /* -15px / 16px */
}

.blog-slider .single-blog {
    margin-right: 0.9375rem; /* 15px / 16px */
    margin-left: 0.9375rem; /* 15px / 16px */
    margin-top: 0.625rem; /* 10px / 16px */
    background: #f3f7ff;
    border-radius: 0.625rem; /* 10px / 16px */
}

.single-blog {
    background: #f3f7ff;
    margin: 1.5625rem 0rem 0rem 0rem; /* 25px 0px 0px 0px / 16px */
}

.single-blog .title {
    font-size: 1.5625rem; /* 25px / 16px */
    line-height: 2.375rem; /* 38px / 16px */
    font-weight: 600;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.single-blog .title a {
    color: #021a45;
    padding: 0.625rem 0rem; /* 10px 0px / 16px */
}

.single-blog .title a:hover {
    color: #0d6efd;
}

.single-blog .blog-image {
    margin-bottom: 1.625rem; /* 26px / 16px */
    border-radius: 0.625rem; /* 10px / 16px */
    overflow: hidden;
}

.single-blog .desc {
    margin-bottom: 1.875rem; /* 30px / 16px */
}

.single-blog .button-primary-trans i {
    margin-left: 5px;
}

.blog-lists {
    margin-bottom: -2.5rem; /* -40px / 16px */
}

.blog-lists .single-blog {
    margin-bottom: 3.125rem; /* 50px / 16px */
}

.full-width .single-blog .blog-content {
    width: calc(100% - 6.25rem); /* 100px / 16px */
    margin: auto;
.blog-meta {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    margin-bottom: 3.125rem; /* 50px / 16px */
}   border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    background-color: #94b9ff;
    padding: 1.5625rem 2.5rem 0.3125rem 2.5rem; /* 25px 40px 5px 40px / 16px */
    border-radius: 0.625rem; /* 10px / 16px */
}

.blog-meta .single-meta {
    margin-right: 3.125rem; /* 50px / 16px */
    margin-bottom: 0.625rem; /* 10px / 16px */
}

.blog-meta .single-meta:last-child {
    margin-right: 0rem; /* 0px / 16px */
}

.blog-meta .single-meta .meta-title {
    margin-bottom: 0.3125rem; /* 5px / 16px */
    font-size: 0.9375rem; /* 15px / 16px */
    letter-spacing: 0.125rem; /* 2px / 16px */
}

.blog-meta .single-meta .meta-value {
    font-size: 1rem; /* 16px / 16px */
    color: #282828;
}

.blog-meta .single-meta .meta-value a {
    color: #282828;
}

/* .blog-meta .single-meta .meta-value:before {
    content: ".";
    color: #0046d5;
    margin-right: 5px;
} */

/*------------------------
6. Navigation-&-Pagination
-------------------------*/
.navigation,
.pagination {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    margin-top: 5rem; /* 80px / 16px */
}

.nav-links {
    width: 100%;
}

.pagination .page-numbers {
    background: #558bff;
    display: inline-block;
    width: 3.125rem; /* 50px / 16px */
    height: 3.125rem; /* 50px / 16px */
    margin: 0.3125rem; /* 5px / 16px */
    line-height: 3.125rem; /* 50px / 16px */
    position: relative;
    z-index: 1;
    color: #141414;
}

.pagination .page-numbers:hover,
.pagination .page-numbers.current {
    color: #ffffff;
}

.pagination .page-numbers:after {
    content: "";
    background-color: #f9f9f9;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    -moz-transition: 0.3s;
    -ms-transition: 0.3s;
    -o-transition: 0.3s;
}

.pagination .page-numbers.current:after,
.pagination .page-numbers:hover:after {
    opacity: 0;
}

/* ---------------------
Footer-Area
--------------------- */
.footer-area {
    padding-top: 5.625rem; /* 90px / 16px */
    /* padding-bottom: 1.875rem; */
    background-color: #021a45;
}

.footer-widgets {
    margin-bottom: 3.75rem; /* 60px / 16px */
    color: #ffffff;
}

.footer-widgets ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

.footer-widgets ul li {
    margin: 0.5rem 0; /* 8px / 16px */
}

.footer-widgets a {
    color: #ffffff;
}

.footer-bottom {
    background-color: #0d6efd;
    /* margin-left: 0.3125rem; */
    /* margin-right: 0.3125rem; */
    padding: 1.5625rem 0.9375rem; /* 25px 15px / 16px */
    font-size: 1rem; /* 16px / 16px */
    color: #fff;
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
}

.footer-widgets .footer-logo {
    margin-bottom: 1.875rem; /* 30px / 16px */
}

.footer-widgets .widget-title {
    color: #ffffff;
    font-size: 1.5rem; /* 24px / 16px */
    margin-bottom: 1.5625rem; /* 25px / 16px */
}

/* .footer-widgets .widget-title:before {
    content: ".";
} */

/*----------------------
11. Preloader-CSS
 ---------------------*/
.preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #021a45;
    z-index: 999999;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    pointer-events: none;
}

.preloader img {
    width: 18.75rem; /* 300px / 16px */
}

/* ------------------------
12. ScrollUpButton
-------------------------- */
#scrollUp {
    position: fixed;
    right: 2%;
    top: 100%;
    width: 1.75rem; /* 28px / 16px */
    height: 3.75rem; /* 60px / 16px */
    line-height: 3.75rem; /* 60px / 16px */
    font-size: 1rem; /* 16px / 16px */
    border: 0.125rem solid #0d6efd; /* 2px / 16px */
    color: #0d6efd;
    text-align: center;
    background-color: #ffffff;
    border-radius: 6.25rem; /* 100px / 16px */
    z-index: 999;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
}

#scrollUp:hover {
    background-color: #0d6efd;
    color: #ffffff;
}

#scrollUp.active {
    top: calc(100% - 6.875rem) /* 110px / 16px */
}

#scrollUp i {
    -webkit-animation: mymove 1s ease-in 0s infinite alternate;
    animation: mymove 1s ease-in 0s infinite alternate;
    display: inline-block;
    position: relative;
}

@-webkit-keyframes mymove {
    from {
        top: -0.3125rem; /* -5px / 16px */
    }

    to {
        top: 0.3125rem; /* 5px / 16px */
    }
}

@keyframes mymove {
    from {
        top: -0.3125rem; /* -5px / 16px */
    }

    to {
        top: 0.3125rem; /* 5px / 16px */
    }
}

/* ------------------------
13. Portfolio-Page
-------------------------- */
.site-header {
    background-image: url('../images/site-header.png');
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-position: center center;
    background-size: cover;
    position: relative;
    z-index: 1;
    padding-top: 13.75rem; /* 220px / 16px */
    padding-bottom: 7.5rem; /* 120px / 16px */
    overflow: hidden;
}

.site-header .title {
    color: #ffffff;
    font-size: 4.75rem; /* 76px / 16px */
}

.site-header .breadcrumbs ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
    text-align: right;
}

.site-header .breadcrumbs ul li {
    display: inline-block;
    font-size: 1.5rem; /* 24px / 16px */
    color: #ffffff;
}

.site-header .breadcrumbs ul li:after {
    content: "-";
    margin: 0 1.875rem; /* 30px / 16px */
}

.site-header .breadcrumbs ul li:last-child:after {
    display: none;
    margin-right: 0rem; /* 0px / 16px */
}

.site-header .breadcrumbs ul li a {
    color: #ffffff;
}

.quote-box {
    text-align: center;
    padding: 6.25rem 1.875rem; /* 100px 30px / 16px */
    background-color: #94b9ff;
    border-radius: 0.625rem; /* 10px / 16px */
}

.quote-content .title {
    font-size: 2.25rem; /* 36px / 16px */
}

.quote-content .desc {
    font-weight: 600;
    margin-bottom: 3.125rem; /* 50px / 16px */
}

/* -------------------------
14. Portfolio-Details
-------------------------- */

.blog-details .head-title,
.portfolio-details .head-title {
    font-size: 2.8125rem; /* 45px / 16px */
    margin-bottom: 3.125rem; /* 50px / 16px */
}

.image-block {
    /* width: calc(100% + 10rem); */
    /* max-width: 98vw; */
    position: relative;
    /* left: 50%; */
    /* transform: translateX(-50%); */
    margin-bottom: 3.125rem; /* 50px / 16px */
    border-radius: 0.625rem; /* 10px / 16px */
    overflow: hidden;
}

.portfolio-details .portflio-info {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    background-color: #94b9ff;
    flex-wrap: wrap;
    padding: 1.5625rem 2.5rem; /* 25px 40px / 16px */
    margin-bottom: 3.125rem; /* 50px / 16px */
    border-radius: 0.625rem; /* 10px / 16px */
}

.portfolio-details .portflio-info .single-info {
    margin-right: 1.875rem; /* 30px / 16px */
    padding: 0.9375rem 0; /* 15px / 16px */
}

.portfolio-details .portflio-info .single-info:last-child {
    margin-right: 0rem; /* 0px / 16px */
}

.portfolio-details .portflio-info .single-info .title {
    font-size: 1rem; /* 16px / 16px */
    margin-bottom: 0.3125rem; /* 5px / 16px */
}

/* .portfolio-details .portflio-info .single-info .title:before {
    content: ".";
    color: #0046d5;
    margin-right: 5px;
} */

.description .gallery {
    list-style: none;
    margin: 1.875rem 0rem 0rem 0rem; /* 30px 0px 0px 0px / 16px */
    padding: 0rem; /* 0px / 16px */
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.description .gallery li {
    margin-bottom: 1.875rem; /* 30px / 16px */
    width: 49%;
    border-radius: 0.625rem; /* 10px / 16px */
    overflow: hidden;
}

.description .gallery li:nth-child(n + 3) {
    width: 100%;
}

.portfolio-details .description .dots-list {
    list-style: none;
    padding: 0.625rem 0 0 0; /* 10px 0 0 0 / 16px */
    margin: 0rem 0 1.875rem 0; /* 0px 0 30px 0 / 16px */
}

.description .dots-list li {
    margin: 0.625rem 0rem; /* 10px 0px / 16px */
}

.description .dots-list li:before {
    color: #0d6efd;
    font-family: 'Font Awesome 5 Pro';
    content: "\f00c";
    font-weight: 900;
    margin-right: 0.625rem; /* 10px / 16px */
    font-size: 1rem; /* 16px / 16px */
}

.single-navigation {
    padding: 0.9375rem; /* 15px / 16px */
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    background-color: #f3f7ff;
    margin-top: 3.75rem; /* 60px / 16px */
    border-radius: 0.625rem; /* 10px / 16px */
}

.single-navigation .nav-link {
    display: flex;
    align-items: center;
    max-width: 50%;
}

.single-navigation .nav-link .icon {
    width: 3.125rem; /* 50px / 16px */
    height: 3.125rem; /* 50px / 16px */
    text-align: center;
    line-height: 3.125rem; /* 50px / 16px */
    color: #fff;
    background-color: #0d6efd;
    margin: 0.9375rem; /* 15px / 16px */
    font-size: 1.375rem; /* 22px / 16px */
    transition: 0.3s;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -ms-transition: 0.3s;
    border-radius: 50%;
    -o-transition: 0.3s;
}

.single-navigation .nav-link:hover .icon {
    background-color: #0d6efd;
    color: #ffffff;
}

.single-navigation .nav-link .text {
    font-size: 1.375rem; /* 22px / 16px */
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    color: #282828;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.swiper-slide {
    overflow: hidden;
    color: #fff;
}

.swiper-container {
    width: 100%;
    left: 0;
    top: 0;
}

.slide-inner {
    width: 100%;
    padding-top: 20rem; /* 320px / 16px */
    padding-bottom: 13.125rem; /* 210px / 16px */
    background-size: cover;
    background-position: center;
    position: relative;
    z-index: 1;
    min-height: calc(100vh - 2.5rem); /* 40px / 16px */
    display: flex;
    align-items: center;
}

.main_menu.menu_fix {
    background: #fff;
    border-color: #eeeeeeb5;
}

.main_menu.menu_fix .nav li a {
    color: #3a3a3a;
}

.main_menu.menu_fix ul li>a i.plus:before,
.main_menu.menu_fix ul li>a i.plus:after {
    background-color: #3a3a3a !important;
}

.main_menu.menu_fix .social-buttons a {
    color: #292929;
}

.single-service {
    padding: 1.5625rem; /* 25px / 16px */
    background: #f3f7ff;
    border-radius: 0.625rem; /* 10px / 16px */
}

.header-text a.button-dark.mouse-dir {
    background: #0d6efd;
}

.about-image img {
    width: 100% !important;
}

.slick-dots li button {
    background-color: #0d6efd;
    border-radius: 50%;
    margin: 0.3125rem 0.125rem 0 0.125rem; /* 5px 2px 0 2px / 16px */
}

.blog-content {
    padding: 1.875rem; /* 30px / 16px */
    padding-top: 0;
}

.blog-content a {
    padding: 0.625rem 1.5625rem; /* 10px 25px / 16px */
}

.navbar-brand {
    max-width: 11.875rem; /* 190px / 16px */
    padding: 0;
    margin: 0;
}

.footer-widgets .footer-logo {
    max-width: 11.875rem; /* 190px / 16px */
}

.copyright {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.copyright p {
    margin: 0;
}

.copyright p span {
    color: #021a45;
    text-transform: uppercase;
    font-size: 1rem; /* 16px / 16px */
    font-weight: 600;
}

.footer-widgets .text-box ul li a {
    display: block;
    width: 2.5rem; /* 40px / 16px */
    height: 2.5rem; /* 40px / 16px */
    line-height: 2.5rem; /* 40px / 16px */
    text-align: center;
    background: #ff885e1f;
    margin-right: 0.4375rem; /* 7px / 16px */
    border-radius: 50%;
    transition: all linear .3s;
    -webkit-transition: all linear .3s;
    -moz-transition: all linear .3s;
    -ms-transition: all linear .3s;
    -o-transition: all linear .3s;
}

.footer-widgets .text-box ul li a:hover {
    background: #0d6efd
}

.page-item {
    background: #558bff;
    display: inline-block;
    width: 3.125rem; /* 50px / 16px */
    height: 3.125rem; /* 50px / 16px */
    margin: 0.3125rem; /* 5px / 16px */
    line-height: 3.125rem; /* 50px / 16px */
    position: relative;
    z-index: 1;
    color: #141414;
}

.page-link {
    background: #f9f9f9;
    border: none;
    color: black;
}

.page-item.disabled>.page-link {
    background: #f9f9f9 !important;
    border: none;
    color: black;
}

.single-portfolio img {
    width: 100%;
    height: 20.625rem; /* 330px / 16px */
    object-fit: cover;
}

.slick-slide img {
    display: inline-block;
    height: 18.75rem; /* 300px / 16px */
    object-fit: cover;
}

.blog-image img {
    height: 18.75rem; /* 300px / 16px */
    object-fit: cover;
}


/* cyrillic-ext */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WRhyzbi.woff2) format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2) format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* vietnamese */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WZhyzbi.woff2) format('woff2');
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wdhyzbi.woff2) format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WRhyzbi.woff2) format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2) format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* vietnamese */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WZhyzbi.woff2) format('woff2');
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wdhyzbi.woff2) format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WRhyzbi.woff2) format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2) format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* vietnamese */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WZhyzbi.woff2) format('woff2');
    unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wdhyzbi.woff2) format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url(/fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

#notfound {
    position: relative;
    height: 50vh;
}

#notfound .notfound {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.notfound {
    max-width: 25.625rem; /* 410px / 16px */
    width: 100%;
    text-align: center;
}

.notfound .notfound-404 {
    height: 17.5rem; /* 280px / 16px */
    position: relative;
    z-index: -1;
}

.notfound .notfound-404 h1 {
    font-family: 'Montserrat', sans-serif;
    font-size: 14.375rem; /* 230px / 16px */
    margin: 0rem; /* 0px / 16px */
    font-weight: 900;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background: url('./images/bg.jpg') no-repeat;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-size: cover;
    background-position: center;
}


.notfound h2 {
    font-family: 'Montserrat', sans-serif;
    color: #000;
    font-size: 1.5rem; /* 24px / 16px */
    font-weight: 700;
    text-transform: uppercase;
    margin-top: 0;
}

.notfound p {
    font-family: 'Montserrat', sans-serif;
    color: #000;
    font-size: 0.875rem; /* 14px / 16px */
    font-weight: 400;
    margin-bottom: 1.25rem; /* 20px / 16px */
    margin-top: 0rem; /* 0px / 16px */
}

.notfound a {
    font-family: 'Montserrat', sans-serif;
    font-size: 0.875rem; /* 14px / 16px */
    text-decoration: none;
    text-transform: uppercase;
}

/* Watch Video Button Styles */
.btn-watch-video {
    display: inline-flex;
    align-items: center;
    padding: 0.75rem 1.5rem; /* 12px 24px / 16px */
    background: rgba(255, 255, 255, 0.1);
    border: 0.125rem solid rgba(255, 255, 255, 0.3); /* 2px / 16px */
    border-radius: 3.125rem; /* 50px / 16px */
    color: #ffffff;
    text-decoration: none;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 1rem; /* 16px / 16px */
    transition: all 0.3s ease;
    backdrop-filter: blur(0.625rem); /* 10px / 16px */
    -webkit-backdrop-filter: blur(0.625rem); /* 10px / 16px */
}

.btn-watch-video:hover {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.5);
    color: #ffffff;
    text-decoration: none;
    transform: translateY(-0.125rem); /* -2px / 16px */
    box-shadow: 0 0.5rem 1.5625rem rgba(0, 0, 0, 0.2); /* 0 8px 25px / 16px */
}

.btn-watch-video i {
    font-size: 1.5rem; /* 24px / 16px */
    margin-right: 0.5rem; /* 8px / 16px */
    color: #0d6efd;
}

.btn-watch-video:hover i {
    color: #ffffff;
}

.btn-watch-video span {
    font-size: 1rem; /* 16px / 16px */
    font-weight: 600;
}

/* Responsive adjustments */
@media (max-width: 48rem) { /* 768px / 16px */
    .btn-watch-video {
        padding: 0.625rem 1.25rem; /* 10px 20px / 16px */
        font-size: 0.875rem; /* 14px / 16px */
    }

    .btn-watch-video i {
        font-size: 1.25rem; /* 20px / 16px */
        margin-right: 0.375rem; /* 6px / 16px */
    }

    .btn-watch-video span {
        font-size: 0.875rem; /* 14px / 16px */
    }
}
    background: #0046d5;
    display: inline-block;
    padding: 15px 30px;
    border-radius: 40px;
    color: #fff;
    font-weight: 700;
    -webkit-box-shadow: 0px 4px 15px -5px #0046d5;
    box-shadow: 0px 4px 15px -5px #0046d5;
}


@media only screen and (max-width: 47.9375rem) { /* 767px / 16px */
    .notfound .notfound-404 {
        height: 8.875rem; /* 142px / 16px */
    }

    .notfound .notfound-404 h1 {
        font-size: 7rem; /* 112px / 16px */
    }
}

/* ========================
   JOIN US MODERN STYLES
   ======================== */

/* Main Title Styles */
.join-us-main-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 1.25rem; /* 20px / 16px */
    position: relative;
}

.join-us-main-title::after {
    content: '';
    position: absolute;
    bottom: -0.625rem; /* -10px / 16px */
    left: 50%;
    transform: translateX(-50%);
    width: 3.75rem; /* 60px / 16px */
    height: 0.25rem; /* 4px / 16px */
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    border-radius: 0.125rem; /* 2px / 16px */
}

.join-us-subtitle {
    font-size: 1.1rem;
    color: #7f8c8d;
    line-height: 1.8;
    max-width: 37.5rem; /* 600px / 16px */
    margin: 0 auto;
}

/* Benefits Cards */
.join-benefit-card {
    background: #ffffff;
    border-radius: 1.25rem; /* 20px / 16px */
    padding: 2.5rem 1.5625rem; /* 40px 25px / 16px */
    text-align: center;
    box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.08); /* 0 10px 30px / 16px */
    transition: all 0.4s ease;
    border: 0.0625rem solid #f8f9fa; /* 1px / 16px */
    height: 100%;
    position: relative;
    overflow: hidden;
}

.join-benefit-card:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0.25rem; /* 4px / 16px */
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    transform: scaleX(0);
    transition: transform 0.4s ease;
}

.join-benefit-card:hover {
    transform: translateY(-0.9375rem); /* -15px / 16px */
    box-shadow: 0 1.5625rem 3.125rem rgba(0, 0, 0, 0.15); /* 0 25px 50px / 16px */
}

.join-benefit-card:hover:before {
    transform: scaleX(1);
}

.benefit-icon {
    width: 5rem; /* 80px / 16px */
    height: 5rem; /* 80px / 16px */
    margin: 0 auto 1.5625rem; /* 25px / 16px */
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease;
}

.benefit-icon i {
    font-size: 2rem; /* 32px / 16px */
    color: #fff;
    transition: all 0.4s ease;
}

.join-benefit-card:hover .benefit-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 0.9375rem 1.875rem rgba(13, 110, 253, 0.3); /* 0 15px 30px / 16px */
}

.benefit-title {
    font-size: 1.25rem; /* 20px / 16px */
    font-weight: 600;
    color: #333;
    margin-bottom: 0.9375rem; /* 15px / 16px */
    transition: color 0.4s ease;
}

.join-benefit-card:hover .benefit-title {
    color: #0d6efd;
.benefit-desc {
    font-size: 0.9375rem; /* 15px / 16px */
    color: #666;
    line-height: 1.6;
}   margin-bottom: 0;
}

/* Modern Form Card */
.modern-join-form-card {
    background: #ffffff;
    border-radius: 1.5625rem;
    padding: 3.125rem;
    box-shadow: 0 1.25rem 3.75rem rgba(0, 0, 0, 0.1);
    border: 0.0625rem solid #f1f3f4;
    position: relative;
    overflow: hidden;
}

.modern-join-form-card:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0.375rem;
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
}

.form-title {
    font-size: 1.75rem;
    font-weight: 700;
    color: #2c3e50;
    margin-bottom: 0.625rem;
}

.form-subtitle {
    font-size: 1rem;
    color: #7f8c8d;
    margin-bottom: 0;
}

/* Form Section Cards */
.form-section-card {
    background: #ffffff;
    border-radius: 0.9375rem;
    border: 0.0625rem solid #e9ecef;
    box-shadow: 0 0.3125rem 0.9375rem rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    overflow: hidden;
}

.form-section-card:hover {
    box-shadow: 0 0.625rem 1.5625rem rgba(0, 0, 0, 0.1);
    transform: translateY(-0.125rem);
}

.form-section-card .card-header {
    background: linear-gradient(45deg, #f8f9fa, #e9ecef);
    border-bottom: 0.0625rem solid #dee2e6;
    padding: 1.25rem 1.5625rem;
    border-radius: 0.9375rem 0.9375rem 0 0;
}

.section-card-title {
    font-size: 1.125rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 0;
    display: flex;
    align-items: center;
}

.section-card-title i {
    color: #0d6efd;
    font-size: 1rem;
}

.form-section-card .card-body {
    padding: 1.875rem 1.5625rem;
}

/* Modern Form Controls */
.modern-form-group {
    position: relative;
}

.modern-form-label {
    font-weight: 600;
    color: #495057;
    margin-bottom: 0.5rem;
    font-size: 0.875rem;
    display: block;
}

.modern-form-control {
    width: 100%;
    padding: 0.9375rem 1.25rem;
    border: 0.125rem solid #e9ecef;
    border-radius: 0.75rem;
    font-size: 1rem;
    transition: all 0.3s ease;
    background: #ffffff;
    color: #495057;
}

.modern-form-control:focus {
    outline: none;
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.1875rem rgba(13, 110, 253, 0.1);
    transform: translateY(-0.0625rem);
}

.modern-form-control::placeholder {
    color: #adb5bd;
    font-size: 0.9375rem;
}

/* Upload Cards */
.upload-card {
    background: #ffffff;
    border: 0.125rem dashed #dee2e6;
    border-radius: 0.9375rem;
    padding: 1.875rem 1.25rem;
    text-align: center;
    transition: all 0.3s ease;
    cursor: pointer;
    position: relative;
    height: 100%;
    min-height: 12.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.upload-card:hover {
    border-color: #0d6efd;
    background: #f8f9ff;
    transform: translateY(-0.1875rem);
    box-shadow: 0 0.625rem 1.5625rem rgba(13, 110, 253, 0.1);
}

.upload-icon {
    width: 3.75rem;
    height: 3.75rem;
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 0.9375rem;
    transition: all 0.3s ease;
}

.upload-card:hover .upload-icon {
    transform: scale(1.1);
    box-shadow: 0 0.5rem 1.25rem rgba(13, 110, 253, 0.3);
}

.upload-icon i {
    font-size: 1.5rem;
    color: #ffffff;
}

.upload-label {
    font-size: 1rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 0.625rem;
    cursor: pointer;
    display: block;
}

.upload-input {
    position: absolute;
    opacity: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    top: 0;
    left: 0;
}

.upload-note {
    font-size: 0.75rem;
    color: #6c757d;
    margin-top: 0.3125rem;
    display: block;
}

/* Modern Submit Button */
.modern-submit-btn {
    background: linear-gradient(45deg, #0d6efd, #6c5ce7);
    color: #ffffff;
    border: none;
    padding: 1.125rem 3.125rem;
    border-radius: 3.125rem;
    font-size: 1.125rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;
    box-shadow: 0 0.5rem 1.5625rem rgba(13, 110, 253, 0.3);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.modern-submit-btn:hover {
    transform: translateY(-0.1875rem);
    box-shadow: 0 0.9375rem 2.1875rem rgba(13, 110, 253, 0.4);
    color: #ffffff;
}

.modern-submit-btn .dir-part {
    background: rgba(255, 255, 255, 0.2);
}

.submit-note {
    font-size: 0.875rem;
    color: #6c757d;
    margin-bottom: 0;
}

/* Responsive Design */
@media (max-width: 768px) {
    .join-us-main-title {
        font-size: 2rem;
    }

    .modern-join-form-card {
        padding: 1.875rem 1.25rem;
    }

    .join-benefit-card {
        padding: 1.875rem 1.25rem;
        margin-bottom: 1.25rem;
    }

    .benefit-icon {
        width: 4.375rem;
        height: 4.375rem;
        margin-bottom: 1.25rem;
    }

    .benefit-icon i {
        font-size: 1.75rem;
    }

    .form-section-card .card-header {
        padding: 0.9375rem 1.25rem;
    }

    .form-section-card .card-body {
        padding: 1.25rem;
    }

    .upload-card {
        padding: 1.25rem 0.9375rem;
        min-height: 11.25rem;
        margin-bottom: 0.9375rem;
    }

    .upload-icon {
        width: 3.125rem;
        height: 3.125rem;
        margin-bottom: 0.625rem;
    }

    .upload-icon i {
        font-size: 1.25rem;
    }

    .modern-submit-btn {
        padding: 0.9375rem 2.5rem;
        font-size: 1rem;
    }
}

@media (max-width: 576px) {
    .join-us-main-title {
        font-size: 1.8rem;
    }

    .form-title {
        font-size: 1.5rem;
    }

    .modern-join-form-card {
        padding: 1.5625rem 0.9375rem;
    }

    .join-benefit-card {
        padding: 1.5625rem 0.9375rem;
    }

    .upload-card {
        min-height: 10rem;
    }
}

/* Filter Button Responsive Styles */
@media (max-width: 768px) {
    .modern-filter-menu {
        flex-wrap: wrap;
        gap: 0.75rem;
        justify-content: center;
    }

    .filter-btn {
        font-size: 0.875rem;
        padding: 0.75rem 1.25rem;
        min-width: 6.25rem;
    }

    .filter-btn .filter-icon {
        font-size: 0.875rem;
    }
}

@media (max-width: 576px) {
    .modern-filter-menu {
        gap: 0.5rem;
    }

    .filter-btn {
        font-size: 0.8125rem;
        padding: 0.625rem 1rem;
        min-width: 5.625rem;
        gap: 0.375rem;
    }

    .filter-btn .filter-icon {
        font-size: 0.75rem;
    }

    .filter-btn .filter-text {
        font-size: 0.8125rem;
    }
}
