@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&family=Smooch+Sans:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Alexandria:wght@100..900&display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    scroll-behavior: smooth;
    scroll-padding-top: 2rem;
    list-style: none;
    text-decoration: none;
    font-family: "Raleway", sans-serif;
    font-optical-sizing: auto;
}

:root{
    --text-color:#4d4e50;
    --main-color:#4d4e50;
    --navbar-color: #ffffff;
    --main-text-color: #c62630;
}

/*Custom Scroll Bar*/
html::-webkit-scrollbar{
    width: 0.5rem;
}

html::-webkit-scrollbar-thumb{
    background: transparent;
}

html::-webkit-scrollbar-track{
    background: var(--main-text-color);
    border-radius: 5rem;
}

h3{
    font-weight: 300;
}

section{
    padding: 50px 100px;
}
header{
    position: absolute; /* Ensure the header stays in place */
    padding: 0 2rem; /* Adjust padding as needed */
    width: 100%;
    max-width: 100%; /* Ensure it stretches across the full width */
    overflow-x: hidden; /* Prevents horizontal scroll caused by padding */
    z-index: 10; /* Ensure the header is layered above the content */
    background-color: transparent; /* Transparent background */
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}
body {
    position: relative;
    width: 100%;
    display: block;
    min-height: 100vh;
    margin: 0;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
}

.index-page {
    overflow-y: hidden; /* Hide vertical scrollbar */
}

/* Allow scrollbar for all other pages */
body:not(.index-page) {
    overflow-y: auto; /* Show vertical scrollbar */
}
header.shadow
{
    background: var(--text-color);
}

header.shadow .logo{
    color: var(--navbar-color);
}

header .logo{
    margin-top: 10px;
}

header .logo img {
    width: 60px;
    height: auto;
    opacity: 1;
}

.app-label {
    font-weight: 800;
    font-size: .8rem;
}

.hidden {
    display: none !important;
}

.content-wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh; /* Ensure full viewport height */
    padding-bottom: 4rem; /* Space to prevent footer overlap */
}

.navbar{
    display: flex;
    column-gap: 2.5rem;
}

.navbar li{
    position: relative;
}

.navbar a {
    font-weight: 700;
    color: var(--text-color);
    text-transform: uppercase;
}

.navbar a span{
    font-size: 0.78rem;
}

.navbar a::after{
    content: '';
    width: 0;
    height: 2px;
    background-color: var(--main-text-color);
    position: absolute;
    bottom: -4px;
    left:0px;
    transition: 0.4s all linear;
}

.navbar a span::after{
    font-size: 0.20rem;
}

.navbar a:hover::after, .navbar .home-active::after{
    width: 100%;
}

#menu-icon {
    font-size: 24px;
    cursor: pointer;
    color: var(--main-text-color);
    display: none;
}

/* Mobile Navbar Hidden by Default */
.mobile-navbar {
    display: none;
    position: fixed;
    top: 0;
    right: -100%; /* Keep it off-screen */
    width: 200px;
    height: 50vh;
    background: var(--main-color); /* Solid background */
    box-shadow: -4px 0 10px rgba(0, 0, 0, 0.3);
    padding: 20px;
    text-align: right;
    transition: right 0.3s ease-in-out;
    z-index: 1002;
}

/* When menu is active, bring it into view */
.mobile-navbar.active {
    display: flex;
    right: 0;
}
/* Style for menu items */
.mobile-navbar ul {
    list-style: none;
    padding: 0;
}

.mobile-navbar ul li {
    padding: 12px 0;
}

.mobile-navbar ul li a {
    color: var(--main-text-color);
    font-size: 1.2rem;
    text-decoration: none;
    display: block;
    padding: 8px 15px;
}

/* Close Button */
.close-menu {
    font-size: 35px;
    color: var(--main-color);
    position: absolute;
    right: 11px;
    top: 0px;
    cursor: pointer;
}

.home {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
  }



/*************************  Navgivation CSS *********************************/

/* .home{
    position: relative;
    width: 100%;
    height: 105vh;
    min-height: 105vh;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    /*background:    rgba(0, 0, 0, 0.76); 
    background-size: 150px;
    mix-blend-mode: lighten; 
    overflow: hidden; /* Ensure no overflow during zoom 
} */

.home picture {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1s ease-in-out;
  }
  
  .home picture.active {
    opacity: 1;
  }
  
  .home picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

.index-text-container {
    position: absolute;
    bottom: 15%;
    right: 15%;
    left: 0;
    z-index: 100;
}

.fade-text-container {
    display: flex;
    padding: 20px;
    border-radius: 5px;
    color: #fff;
  }
  
  .d-flex {
    display: flex;
    align-items: center;
  }
  
  .w-100 {
    width: 100%;
  }
  
  .static-dot {
    font-size: 24px;
    margin-right: 1px;
    margin-top: 5px;
    font-weight: bold;
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 100%;
    background: #ffffff;
  }
  
  .text-cycling-area {
    position: relative;
    min-height: 45px;
    min-width: 250px;
  }
  
  /* Add a static dot before the text container */
  /* .text-cycling-area:before {
    content: "•";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 50px;
    line-height: 1;
  } */
  
  .fade-text {
    position: absolute;
    opacity: 0;
    font-size: 1.8rem;
    text-transform: lowercase;
    font-family:"Alexandria", serif;
    transition: opacity 1s ease-in-out;
    left: 0; 
  }
  
  .fade-text.active {
    opacity: 1;
  }

  /* .fade-text:before {
    content: "•";
    display: inline-block;
    margin-right: 5px;
    font-size: 1.2em;
    line-height: 1;
    vertical-align: middle;
  } */

@keyframes fadeText {
    0%, 100% { opacity: 0; }
    3%, 30% { opacity: 1; }
    33% { opacity: 0; }
}

 /* .index-text-container p {
    direction: ltr;
    position: absolute;
    display: inline-flex;
    align-items: center;
    /* justify-content: flex-end; 
    font-size: 2rem;
    color: var(--navbar-color);
    /* visibility: hidden; 
}

.static-dot {
    opacity: 1;
}

.index-text-container .fade-text {
    font-family: "Alexandria", serif;
    text-transform: lowercase;
    font-weight: 700;
    font-size: 2rem;
    animation: fadeText 9s infinite;
    opacity: 0;
}

 .index-text-container .fade-text:nth-child(1) {
    animation-delay: 0s;
}

 .index-text-container .fade-text:nth-child(2) {
    animation-delay: 3s;
}

 .index-text-container .fade-text:nth-child(3) {
    animation-delay: 6s;
} */


/* Animation Keyframes */
@keyframes fadeText {
    0% { opacity: 0; transform: translateY(0px); }
    10% { opacity: 1; transform: translateY(0); }
    30% { opacity: 1; } /* Stay visible longer */
    50% { opacity: 0; transform: translateY(0px); }
    100% { opacity: 0; }
}

.home .media-icons a:hover{
    transform: scale(1.3);
    color: var(--main-text-color);
}

/* 
.home:hover img,
.home:hover:before {
    transform: scale(1.1); /* Zoom in on hover 
} */

.slider-navigation {
    z-index: 2;
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    grid-gap: 20px;
}

.slider-navigation .nav-btn {
    position: relative;
    width: 15px;
    height: 15px;
    background: transparent; /* Start with transparent background */
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 0 5px rgba(255, 255, 255, 0.5);
    transition: transform 0.5s ease;
}

.slider-navigation .nav-btn:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    background: var(--navbar-color);
    border-radius: 50%;
    transform: translate(-50%, -50%) scale(0.5); /* Start smaller */
    transition: transform 0.5s ease, background-color 0.5s ease;
}

.slider-navigation .nav-btn.active:before {
    transform: translate(-50%, -50%) scale(1.2); /* Morph to a larger circle */
    background: red; /* Change color on active */
}

.slider-navigation .nav-btn.active:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 3px solid red; /* Red border for the active state */
    transform: translate(-50%, -50%) scale(1.4);
    transition: transform 0.5s ease, opacity 0.5s ease;
    opacity: 0.7;
}

#menu-icon {
    font-size: 24px;
    z-index: 100001;
    cursor: pointer;
    display: none;
}

.container{
    width: 100%;
    min-height: 640px;
    position: relative;
    display: flex;
    align-items: center;
}

.container img{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.swiper-pagination-bullet{
    padding: 5px;
}

.swiper-pagination-bullet-active{
    background: var(--navbar-color) !important;
}

.home-text{
    z-index: 100001;
    padding: 0 100px;
}

.home-text span{
    color: var(--navbar-color);
    font-weight: 300;
}

.home-text h1{
    color: var(--main-text-color);
    font-size: 3.4rem;
    font-weight: 700;
    margin-bottom: 1rem;
}

.heading{
    text-align: center;
}

.heading h1{
    font-size: 1.7rem;
    font-weight: 700;
    text-transform: capitalize !important;
    color: var(--main-text-color);
}

.divider {
    width: 100%;
    height: 2px;
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 20%, var(--main-color) 50%, rgba(0, 0, 0, 0) 80%);
    position: relative;
    z-index: 15;
}
/*** START FOOTER SECTION  ***/

.footer {
    width: 100%;
    background-color: var(--navbar-color);
    border-color: var(--main-color);
    border-width: 10px;
    color: var(--main-color);
    padding: 1rem 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    z-index: 1;
    flex-shrink: 0; /* Keeps footer at bottom */
}

.footer-box {
    flex: 1;
}

.footer-logo img {
    width: 60px; /* Smaller logo size */
    height: auto;
    opacity: 0.8;
}

.footer-logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.footer-social-icons {
    display: flex;
    justify-content: center;
    gap: 3rem; /* Increased gap between icons */
}

.footer-social-icons a {
    font-size: 1.5rem;
    color: var(--main-color);
    transition: transform 0.3s ease;
    padding: 0 10px;
}

.footer-social-icons a:hover {
    transform: scale(1.2); /* Slight zoom effect on hover */
    color: var(--main-text-color);
}

.left-section {
    text-align: left;
    padding-left: 20px;
}

.right-section {
    text-align: right;
    font-weight: 300;
    padding-right: 20px;
    color: var(--main-color); /* Ensure text is in logo gray color */
}

.right-section :hover {
    color: var(--main-text-color);
}

.copyright {
    padding: 10px; /* Reduced padding */
    text-align: center;
    color: var(--main-color);
    background: #fff;
    font-size: 0.78rem; /* Slightly smaller font */
}

/*** END FOOTER SECTION  ***/



/*Explore Style*/
.explore_container {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-block: 5rem;
    width: 100%;
}
.explore_content h1 {
    text-align: center;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 2rem;
    color: var(--text-color);
}
.explore_content h1 span{
    color: var(--main-text-color);
}

.card__container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    width: 100%;
    overflow: hidden; /* To ensure content stays within the container */
}

.card__article {
    position: relative;
    overflow: hidden;
    border-radius: 1.5rem;
    transition: transform 0.5s ease-in-out;
    margin-bottom: 2rem; /* Add margin between cards */
    opacity: 0; /* Start with cards invisible */
}

.card__img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 1.5rem;
}

.card__data {
    width: 80%; /* Adjust width */
    max-width: calc(100% - 20px); 
    background-color: rgba(255, 255, 255, 0.8); /* Slightly transparent background */
    padding: 1.5rem 2rem;
    box-shadow: 0 8px 24px hsla(0, 0%, 0%, .15);
    position: absolute;
    bottom: 10px; /* Center vertically */ /* Center horizontally */
    transform: translateX(-50%); /* Translate to center */
    text-align: center; /* Align text center */
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    z-index: 10; /* Ensure it stays above the image */
}

/* Card Title */
.card__description {
    display: block;
    font-size: .813rem;
    margin-bottom: .25rem;
}

.card__title{
    font-size: 1.2rem;
    font-weight: 300;
    color: hsl(0, 0%, 15%);
    margin-bottom: .75rem;
}

/* Button with 3D Effect */
.card__button {
    background-color: #e63946; /* Red background color */
    color: white;
    font-size: 0.8rem;
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 20px;
    text-decoration: none;
    display: inline-flex;
    justify-content: center; /* Center the button content */
    align-items: center; /* Align text and icon vertically */
    gap: 4px;
    box-shadow: 0 4px 0 #a12630;
    transition: all 0.3s ease;
    cursor: pointer;
    margin-top: 15px; /* Adds space between title and button */
}

.card__button:hover {
    background-color: #d62839; /* Slightly darker red */
    transform: translateY(3px); /* Push down on hover */
    box-shadow: 0 3px 0 #7b1e26; /* Adjust shadow to show the "press" effect */
}

.card__button:active {
    transform: translateY(4px); /* Push down more on active */
    box-shadow: 0 2px 0 #5a141a; /* Reduce shadow on click */
}

.card__button i {
    font-size: 0.9rem; /* Smaller Font Awesome icon size */
    transition: transform 0.3s ease;
}

.card__button:hover i {
    transform: translateX(3px); /* Move the arrow slightly to the right on hover */
}


.card__article:hover .card__data{
    animation: show-data 1s forwards;
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.05);
    transition: opacity .3s;
}

.card__article:hover{
    animation: remove-overflow 2s forwards;
}

.card__article:not(:hover){
    animation: show-overflow 2s forwards;
}


.card__article:not(:hover) .card__data{
    animation: remove-data 1s forwards;
}


/* Keyframes for straight-line effect */
@keyframes sideLineEffect {
    0% {
        clip-path: inset(0% 100% 0% 0%); /* Start with a line from left */
    }
    50% {
        clip-path: inset(0% 0% 0% 0%); /* Full image visible */
    }
    100% {
        clip-path: inset(0% 100% 0% 0%); /* Shrink back to a line on the left */
    }
}



/*Card animation*/
@keyframes show-data {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes remove-overflow{
    to{
        overflow: initial;
    }
}

@keyframes remove-data{
    0%{
        transform: translateY(-7rem);
    }
    50%{
        transform: translateY(-10rem);
    }

    100%{
        transform: translateY(.5rem);
    } 
}

@keyframes show-overflow{
    0%{
        overflow: initial;
        pointer-events: none;
    }
    50%{
        overflow: hidden;
    }
}

@keyframes slide-in {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}


/* Scroll Animation */
@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.about-wrapper {
    opacity: 0;
    animation: fadeInUp 1s ease-in-out forwards;
}


.title {
    font-size: 3rem;
    font-weight: 700;
    color: var(--text-color);
}

.title span {
    color: var(--main-text-color);
}


/* ========= start of Project Section Css ============  */
/* .protfolio{
    width: 100%;
    background-color: var(--navbar-color);
}

.protfolio .section-head{
    max-width: 700px;
    margin:22px auto -64px;
    text-align: center;
} */

.section-head h1{
    position: relative;
}

.btn-group{
    text-align: center;
    margin-bottom: 40px;
    padding: 0 10px;
 }
 
 .btn-group .prot-btn {
     /* display: inline-block;
     padding: 10px 20px;
     margin: 5px;
     background-color: transparent;
     color: var(--text-color);
     font-weight: 700;
     text-transform: uppercase;
     letter-spacing: 1px;
     transition: all 0.3s ease;
     border: none;
     border-radius: 5px;
     cursor: pointer;
     position: relative;
     font-size: 1rem; */
    display: inline-block;
    padding: 8px 12px; /* Reduced padding for mobile */
    margin: 3px 2px; /* Reduced margin for tighter spacing */
    background-color: transparent;
    color: var(--text-color);
    font-weight: 600; /* Slightly reduced weight */
    text-transform: uppercase;
    letter-spacing: 0.5px; /* Reduced letter spacing */
    transition: all 0.3s ease;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    position: relative;
    font-size: 0.75rem; /* Smaller font size for mobile */
    white-space: nowrap; /* Prevent text wrapping */
    min-width: fit-content;
}
 
 .btn-group .prot-btn::after {
     content: '';
     position: absolute;
     width: 0;
     height: 2px;
     background-color: var(--main-text-color);
     bottom: 5px;
     left: 50%;
     transform: translateX(-50%);
     transition: width 0.3s ease;
 }
 
 .btn-group .prot-btn:hover::after,
 .btn-group .prot-btn.active::after {
      width: 100%; 
 }
  
 
 .btn-group .prot-btn:active {
     transform: none; /* Removes the push-down effect on click */
 }
 
 .btn-group .prot-btn:hover {
     background-color: none; /* Keep background color constant */
 }

.gallery .item {
    position: relative;
    overflow: hidden;
    /*flex: 1 1 calc(33.333% - 30px); 
    max-width: calc(33.333% - 30px);
    width: calc(33.33% - 10px); */
    cursor: pointer;
}

/* If only two items exist, center the second item */
/* .gallery .item:nth-child(2):nth-last-child(1) {
    margin-left: auto;
    margin-right: auto;
} */

/* If the last row has one extra item (e.g., 5 items in total), center the last one */
/* .gallery .item:nth-child(5):nth-last-child(1) {
    margin-left: auto;
    margin-right: auto;
} */


/* .gallery .item img {
    width: 100%;
    height: 250px; 
    object-fit: cover;
    transition: transform 0.3s ease;
} */


.gallery .item img {
    width: 100%; 
    height: 250px; 
    object-fit: cover;
    transition: transform 0.3s ease;
}

.gallery .item .details {
    position: absolute;
    bottom: -3px; /* Position text at the bottom of the image */
    transform: translateX(-50%);
    left: 100%;
    color: var(--main-text-color);
    padding: 10px 15px;
    text-align: right;
    z-index: 2;
    transition: opacity 0.5s ease;
    opacity: 1; 
}

.gallery .item .detail-next {
    position: absolute;
    bottom: -3px; /* Position text at the bottom of the image */
    transform: translateX(-50%);
    left: 100%;
    color: var(--main-text-color);
    padding: 10px 15px;
    text-align: right;
    z-index: 2;
    transition: opacity 0.5s ease;
    opacity: 1; 
}


/* Overlay appears on hover */
.item .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 250px;
    background: rgba(0, 0, 0, 0.4); /* Slight transparent dark background */
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    opacity: 0;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.item:hover .overlay {
    opacity: 1;
    color: var(--main-text-color);
}


/* Simple and clean button */
.item button {
    background-color: var(--main-text-color);
    color: var(--navbar-color);
    font-size: 0.8rem;
    padding: 8px 16px;
    border-radius: 5px;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.item button:hover {
    background-color: var(--navbar-color); 
    color: var(--main-text-color);
}

.details {
    flex: 1;
    padding: 10px;
    text-align: left;
}

/* .details span {
    font-size: 0.50rem; /* Adjust font size for readability 
    font-weight: 700;
    color: var(--navbar-color);
    white-space: nowrap; /* Prevents text from wrapping to the next line 
    overflow: hidden; /* Hides overflowing text 
    text-overflow: ellipsis; /* Adds "..." to indicate overflowed text 
    display: inline-block; /* Ensures proper text alignment 
    max-width: 100%; /* Restrict the span to its container's width 
    margin-right: 120px;
} */

.details span {
    position: absolute;
    bottom: 36px;
    right: 34px;
    direction: rtl; /* Ensures text expands from right to left */
    text-align: right; /* Aligns text properly for right-to-left languages */
    font-size: 0.78rem; /* Adjusted font size */
    font-weight: 700;
    white-space: nowrap; /* Prevents text from wrapping */
    overflow: visible; /* Ensures full visibility of text */
    text-overflow: clip; /* Ensures text doesn't get truncated */
    color:var(--navbar-color); /* Keeps text visible */
    max-width: 90%; /* Adjust for image width */
}

.detail-next span {
    position: absolute;
    bottom: 20px; /* Moves text closer to the green line */
    right: 35px; /* Aligns text to the right edge */
    direction: rtl; /* Ensures text expands from right to left */
    text-align: right; /* Aligns text properly for right-to-left languages */
    font-size: 0.78rem; /* Adjusted font size */
    white-space: nowrap; /* Prevents text from wrapping */
    overflow: visible; /* Ensures full visibility of text */
    text-overflow: clip; /* Ensures text doesn't get truncated */
    color:var(--navbar-color); /* Keeps text visible */
    max-width: 90%; /* Adjust for image width */
}

.details p {
    font-size: 0.5rem;
    color: var(--main-color);
}

.modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.9);
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.modal-header {
    position: absolute;
    top: 10px;
    right: 20px;
    display: flex;
    gap: 10px;
    z-index: 1001;
}

/* .modal img {
    max-width: 100%;
    max-height: 80%; 
    object-fit: contain;
    z-index: 1;
    filter: brightness(0.8); 
    transform: scale(1.1) rotateY(10deg); 
    transition: all 0.6s ease-in-out;
} */

/* .modal-content img {
    max-width: 100%;
    max-height: calc(100vh - 100px);
    object-fit: contain;
    margin: auto;
    z-index: 1;
    filter: brightness(0.8); 
    transform: scale(1.1) rotateY(10deg); 
    transition: all 0.6s ease-in-out;
} */

.modal-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
}

.modal-content .main-image-container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.modal-content img {
    max-width: 100%; 
    max-height: 90vh;
    object-fit: cover;
    transition: all 0.6s ease-in-out;
}

.modal:hover .modal-img {
    filter: blur(0);
    transform: scale(1) rotateY(0); /* Revert to original size with smooth zoom out */
}

.modal-header .info-icon, .modal-header .close {
    font-size: 18px;
    color:var(--navbar-color);
    cursor: pointer;
    padding: 5px 10px;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 5px;
    transition: all 0.3s ease;
}

.modal-header .info-icon:hover, .modal-header .close:hover {
    background-color: var(--main-text-color);
}

/* .info-button,
.close-button {
    color: var(--navbar-color);
    padding: 8px 12px;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s ease;
    cursor: pointer;
    z-index: 1001;
} */

/* .info-button i,
.close-button i {
    margin-left: 5px;
    font-size: 16px;
} */


.modal-content .prev,
.modal-content .next {
    position: absolute;
    top: 50%;
    font-size: 30px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    color: var(--navbar-color);
    cursor: pointer;
    z-index: 1001;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 50%;
    transform: translateY(-50%);
    transition: background 0.3s ease;
}

.modal-content .prev {
    left: 10px;
}

.modal-content .next {
    right: 10px;
}

.modal-content .prev:hover,
.modal-content .next:hover {
    background: rgba(255, 255, 255, 0.2);
}


/* Thumbnail Slider */
.image-slider {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    overflow-x: auto;
}

.image-slider img {
    width: 80px;
    height: 80px;
    border-radius: 15px;
    margin: 0 5px;
    filter: blur(1px) brightness(0.8);
    transition: all 0.5s ease-in-out;
    cursor: pointer;
    transform: scale(1) rotateY(0); /* Default state */
}

.image-slider img:hover {
    transform: scale(1.1) rotateY(10deg); /* 3D hover effect */
    filter: blur(0) brightness(1);
}

.image-slider img.active {
    transform: scale(1.2); /* Enlarges the active thumbnail */
    border: 2px solid #e63946;
}

.item .information {
    position: absolute;
    left: -9999px; /* Keeps it hidden but still accessible */
    visibility: hidden;
}

/* Preview Thumbnails */
/* .preview-thumbnails {
    display: flex;
    position: absolute;
    z-index: 2;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.5);
    padding: 10px;
    border-radius: 15px;
}

.preview-thumbnails img {
    width: 60px;
    height: 60px;
    margin: 0 10px;
    cursor: pointer;
    border-radius: 10px;
    transition: transform 0.3s ease, filter 0.3s ease;
}

.preview-thumbnails img:hover {
    transform: scale(1.1);
    border: 2px solid #e63946;
}
*/

/* .preview-thumbnails {
    display: flex;
    justify-content: center; /* Center thumbnails 
    /*flex-wrap: wrap; /* Allow wrapping for small screens 
    gap: 10px;
    /* padding: 10px; 
    background: rgba(0, 0, 0, 0.5);
    scroll-behavior: smooth; /* Smooth scrolling 
    white-space: nowrap; /* Prevent thumbnails from wrapping 
    max-width: 90%;
} */

.preview-thumbnails {
    display: flex;
    justify-content: center;
    gap: 10px;
    background: rgba(0, 0, 0, 0.2);
    white-space: nowrap;
    overflow: hidden;
    position: relative;
    width: auto;
}

.preview-thumbnails img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 5px;
    cursor: pointer;
    transition: transform 0.3s ease, border-color 0.3s ease;
}

.thumbnail {
    transition: all 0.3s ease;
    opacity: 0.7;
    border: 2px solid transparent;
}

.thumbnail:hover {
    opacity: 1;
}

.active-thumbnail {
    opacity: 1;
    border: 2px solid #3498db; /* Highlight color */
    box-shadow: 0 0 5px rgba(52, 152, 219, 0.7);
}

.thumbnail-scroll-wrapper {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    padding: 10px 0;
    scroll-snap-type: x mandatory;
}

.thumbnail-loader {
    width: 100%;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.loader-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    border-top: 4px solid #3498db;
    animation: spin 1s linear infinite;
}

.thumbnail-scroll-wrapper.loading {
    opacity: 0;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.thumbnail-scroll-wrapper img {
    scroll-snap-align: center;
    margin: 0 5px;
}

/* .preview-thumbnails img {
    width: 60px; /* Thumbnail width 
    height: 60px; /* Thumbnail height 
    object-fit: cover; /* Ensure proper aspect ratio 
    border-radius: 5px; /* Add rounded corners 
    border: 2px solid transparent;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
} */

/* .preview-thumbnails img:hover {
    transform: scale(1.1); 
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
} */

.preview-thumbnails .thumbnail-scroll-wrapper img:hover {
    transform: scale(1.1);
    border-color: var(--main-text-color); /* Highlight on hover */
}

.preview-thumbnails .thumbnail-scroll-wrapper img.active {
    border-color: var(--main-text-color); /* Highlight active thumbnail */
}

.thumbnail-container {
    position: relative;
    width: auto;
  }

.thumbnail-scroll-wrapper {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    max-width: 90%;
    padding-bottom: 5px;
    gap: 8px;
}

.thumbnail-scroll-wrapper::-webkit-scrollbar {
    display: none;
}

/* Scrollable Thumbnails (Only Applies If More than 12 Images) */
.thumbnail-nav {
    position: absolute;
    bottom: 10px;
    background: rgba(0, 0, 0, 0.2);
    color: white;
    border: none;
    padding: 10px;
    font-size: 20px;
    cursor: pointer;
    transition: 0.3s;
}


.thumbnail-nav.left {
    left: 0;
}

.thumbnail-nav.right {
    right: 0;
}

.thumbnail-nav:hover {
    background: rgba(0, 0, 0, 0.8);
}

.shrinking {
    animation: shrinkAnimation 0.3s ease-in-out;
}

.expanding {
    animation: expandAnimation 0.6s ease-in-out;
}

@keyframes shrinkAnimation {
    from { transform: scale(1); }
    to { transform: scale(0.8); opacity: 0.5; }
}

@keyframes expandAnimation {
    from { transform: scale(0.8); opacity: 0.5; }
    to { transform: scale(1); opacity: 1; }
}


/* Information Content */
#projectInfo {
    background-color: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 20px;
    position: absolute;
    bottom: 20px;
    left: 10%;
    right: 10%;
    z-index: 1001;
    display: none; /* Hidden by default */
    transition: opacity 0.5s ease;
}

.info-text{
    color: var(--navbar-color);
    text-align: justify;
}

/* Keyframes for Slide In 3D Effect */
@keyframes slideIn {
    0% {
        transform: translateZ(-200px) rotateY(90deg);
        opacity: 0;
    }
    100% {
        transform: translateZ(0) rotateY(0);
        opacity: 1;
    }
}

/* Keyframes for Hover 3D Effect */
@keyframes hoverEffect {
    0% {
        transform: rotateY(0deg) scale(1);
    }
    50% {
        transform: rotateY(15deg) scale(1.05);
    }
    100% {
        transform: rotateY(0deg) scale(1.1);
    }
}

/* Card Hover Effect */
.item:hover .overlay {
    opacity: 1;
}

@keyframes hoverCard {
    0% {
        opacity: 0;
        transform: translateY(10px) scale(0.95);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* ========= End of Project Css ============ */

/* ========= Start of About Css ============ */

.section-head-about-us {
    width: 100%;
    text-align: center;
    display: block;
    position: relative;
    top: 0;
    padding: 200px 0 0;
}

.section-head-about-us h1 {
    font-size: 2.5rem; /* Adjust font size */
    color: #333;
    text-align: center;
    text-transform: uppercase !important;
}

.section-head-about-us h1 span{
    color: var(--main-text-color);
}

.about {
    background-color: var(--navbar-color);
    padding: 50px 0;
}

/* Container Styling */
.about-container {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    max-width: 1600px;
    margin: 0 auto;
    color:var(--main-color);
    padding: 20px;
}

.about-image{
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* Text Section */
.text-container {
    font-size: 1.2rem;
    line-height: 1.8;
    text-align: left;
}

.text-container .highlight {
    color: var(--main-color);
    font-weight: bold;
}

/* Image + Expanded Text Container */
.image-text-container {
    flex: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/* Image Grid */
.image-container {
    display: flex;
    justify-content: center;
}

.image-container img {
    height: 450px; /* Keeps images the same height */
    width: auto; /* Prevents stretching */
    object-fit: contain; /* Ensures image is fully visible */
    display: block;
    filter: grayscale(100%);
    transition: transform 0.3s ease-in-out;
}

.mobile-about-container {
    display: none; /* Hide mobile version by default */
}

.small-desktop-about-container {
    display: none; /* Hide mobile version by default */
}

/* Expanded Text */
.expanded-text {
    max-width: 74%;
    line-height: 1.8;
    text-align: left;
    position: absolute;
    right: 0;
    padding-right: 640px;
    left: 12%;
    bottom: 38%;
}


#img2{
    height: 690px;
}

#img3{
    height: 400px;
} 

/* .about {
    width: 100%;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 60px 0;
} */

/* .about {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 50px;
    background-color: #fff;
} */

/* .about-container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
    gap: 20px;
    max-width: 1200px;
    width: 90%;
} */

/* .about-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 80%;
} */
/* 
.about-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: black;
    padding: 50px;
    color: white;
} */

/* .image-container {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
} */

/* .about-image {
    width: 100%;
    max-width: 500px;
    height: auto;
    object-fit: cover;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
} */

/* .text-container {
    flex: 1;
    text-align: justify;
    color: var(--main-color);
} */

/* .text-container p {
    font-size: 1rem;
    line-height: 1.8;
} */

/* .text-container {
    flex: 1;
    padding-right: 40px;
    max-width: 50%;
}

.text-container p {
    font-size: 3rem;
    font-weight: bold;
    text-transform: uppercase;
}

.text-container .highlight {
    color: red;
}

.text-container p {
    font-size: 1.2rem;
    line-height: 1.6;
} */

/* .text-container {
    width: 70%;
    text-align: left;
    margin-bottom: 20px;
}

.text-container .intro-text {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
}

.text-container .highlight {
    font-size: 24px;
    font-weight: bold;
    color:var(--main-text-color);
}

.image-text-container {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
}

.expanded-text {
    flex: 1;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.8;
    padding-left: 30px;
    max-width: 50%;
}


.image-container {
    display: flex;
    gap: 10px;
    align-items: flex-start;
}

.image-container img {
    object-fit: contain;
    display: block;
} */


 .highlight {
    text-transform: capitalize;
    color: var(--main-color);
    font-size: 1.5rem;
    font-weight: 800;
} 



/* Split Image Styling */
/* .image-container {
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.image-container img {
    display: block;
}

#img1{
    width: 350px;
    height: 350px;
    margin-top: -22px;
}

#img2{
    width: 350px;
    height: 700px;
}

#img3{
    width: 350px;
    height: 400px;
    margin-left: -25px;
} */

/* ========= End of About Css ============ */

/* ========= Start of Contact Us Css ============ */
.contact-section h1 {
    font-size: 2.5rem;
    color: var(--text-color);
    margin-top:100px;
}

.contact-title {
    text-align: center;
    font-size: 2.5rem;
    color:var(--text-color);
    z-index: 3;
}

.contact-title span {
    color:var(--main-text-color);
}

.contact-section {
    width: 100%;
    max-width: 700px;
    margin: 10px auto 25px; /* Add margin for spacing */
    text-align: center;
}

/* .contact-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 1200px;
    width: 100%;
} */

.contact-container {
    display: flex;
    justify-content: center; /* Center both items */
    align-items: center;
    max-width: 1600px; /* Adjust width for 4K screens */
    width: 100%;
    margin: 0 auto;
    gap: 20px; /* Space between contact info and map */
}


/* .map-container {
    width: 70%;
    height: 290px;
    background-color: #eaeaea;
    z-index: 4;
} */

.map-container {
    height: 88%; /* Adjust height */
    background-color: #eaeaea;
    overflow: hidden;
}

iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

/* .contact-info {
    width: 23%;
    height: 290px;
    background-color: var(--navbar-color);
    color: var(--text-color);
    margin-right: 60px;
    margin-left: auto;
    margin-top: 58px;
    transition: all 0.3s ease;
    z-index: 3;
} */



.contact-info {
    height: auto;
    background-color: var(--navbar-color);
    color: var(--text-color);
    text-align: left;
}

.contact-info h2 {
    font-size: 0.9rem;
    margin-bottom: 20px;
    font-weight: 700;
    text-align: justify;
}

.contact-info p {
    font-size: 0.9rem;
    margin-bottom: 15px;
    text-align: justify;
    font-weight: 500;
}

.contact-info i {
    align-items: center;
    text-align: justify;
    color:var(--text-color);
}

.social-icons {
    display: flex;
    justify-content: space-evenly;
    margin-top: 15px;
}

.social-icons a {
    color: var(--navbar-color);
    text-decoration: none;
    height: 50px;
    width: 50px;
    border-radius: 50%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.3rem;
    padding-left: 20px;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0);
    transition: all 0.3s;
}

.social-icons a:hover {
    color: var(--main-text-color)
}


/* ========= End of Contact Us Css ============ */

/* ========= Start of Publication Css ============ */

.blog-post {
    flex-direction: column; /* Align content vertically for each post */
    max-width: 100%; /* Remove the max-width limit for the grid */
    overflow: hidden;
    border: 2px solid transparent; /* Default border */
    transition: border-color 0.3s ease;
}

.blog-post:hover {
    transform: translateY(-10px);
}

.blog-post_img {
    width: 100%;
    height: 240px;
    position: relative;
    transform: translateX(-8rem);
}

.blog-post_img img {
    margin: 7px 0px 0px 135px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.blog-post_img:hover img {
    transform: scale(1.05); /* Zoom effect */
}
/* 
.blog-post:hover {
    border-color: var(--main-text-color); 
} */

.blog-post_img img::before {
    content: '';
    width: 100%;
    height: 100%;
    position:absolute;
    top: 0;
    left: 0;
    box-shadow: .5rem .5rem 3rem 1rem rgba(0, 0, 0, 0.5);
}

.post-overlay {
    position: absolute;
    background: rgba(0, 0, 0, 0.6); /* Slightly darker overlay */
    display: flex;
    justify-content: center; 
    align-items: center; 
    opacity: 0; 
    transition: opacity 0.3s ease-in-out; /* Smooth fade-in effect */
}

.card .post-overlay:hover {
    opacity: 1; /* Show overlay on hover */
}

.see-more-btn {
    background-color: var(--main-text-color);
    color: var(--navbar-color);
    font-size: 0.8rem;
    padding: 8px 16px;
    border-radius: 5px;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.see-more-btn:hover {
    background-color:var(--navbar-color);
    color: var(--main-text-color);
}


.blog-post_info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 0;
}

.blog-post_title {
    display: flex;
    align-items: center;
    font-size: 0.9rem;
    color: var(--text-color);
    font-weight: 700;
}

.blog-post_date {
    display: flex;
    align-items: center;
    font-size: 0.9rem;
    color: var(--text-color);
}



.blog-post_cta {
    background-color: #e63946;
    color: white;
    padding: 0.5rem 1rem;
    text-decoration: none;
    border-radius: 5px;
    font-weight: 700;
    align-self: flex-start;
    transition: background-color 0.3s ease-in-out;
}

.blog-post_cta:hover {
    background-color: #d62839;
    transform: scale(1.05); /* Add slight scaling effect on hover */
}


.details-pub {
    text-align: left;
}

.details-pub h5 {
    position: absolute;
    bottom: 35px; /* Moves text closer to the green line */
    left: 20px; /* Aligns text to the right edge */
    direction: ltr; /* Ensures text expands from right to left */
    font-size: 0.85rem; /* Adjusted font size */
    font-weight: 700;
    white-space: nowrap; /* Prevents text from wrapping */
    overflow: visible; /* Ensures full visibility of text */
    text-overflow: clip; /* Ensures text doesn't get truncated */
    color:var(--navbar-color); /* Keeps text visible */
    width: 100%; /* Adjust for image width */
    opacity: 1 !important;
}

.details-pub-next {
    text-align: left;
}

.details-pub-next span {
    position: absolute;
    bottom: 20px; /* Moves text closer to the green line */
    left: 20px; /* Aligns text to the right edge */
    direction: ltr; /* Ensures text expands from right to left */
    font-size: 0.75rem; /* Adjusted font size */
    white-space: nowrap; /* Prevents text from wrapping */
    overflow: visible; /* Ensures full visibility of text */
    text-overflow: clip; /* Ensures text doesn't get truncated */
    color:var(--navbar-color); /* Keeps text visible */
    width: 100%; /* Adjust for image width */
    opacity: 1 !important;
}

/* ========= End of Publication Css ============ */

/*============= JUST for Under mainteainacwe +++++++++*/
.maintenance-page {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100vh;
    width: 100%;
    background-color: #4d4e50; /* Dark background */
}

/* Card-like white box */
.maintenance-container {
    background-color: #fff;
    padding: 40px;
    border-radius: 10px;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
    max-width: 700px;
    width: 90%;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Title */
h1 {
    color: #c62630;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 20px;
}

/* Message */
p {
    color: #4d4e50;
    font-size: 18px;
    font-weight: 300;
    margin-bottom: 15px;
}

/* Social Links */
a.social {
    color: #c62630;
    font-weight: bold;
    text-decoration: underline;
}

a.social:hover {
    color: #4d4e50;
}

/* Construction Area */
.construction-area {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 20px;
}

/* Laptop image */
.laptop img {
    width: 550px;
}

/* Workers */
.worker {
    width: 40px;
    height: 80px;
    background: #c62630;
    border-radius: 50%;
    animation: moveWorker 3s infinite alternate;
}

.worker-1 {
    align-self: flex-start;
    animation-delay: 0s;
}

.worker-2 {
    align-self: flex-end;
    animation-delay: 1.5s;
}

/* Crane Hook Animation */
.hook {
    width: 10px;
    height: 50px;
    background: #c62630;
    animation: hookMove 2s infinite alternate;
}

/* Animations */
@keyframes moveWorker {
    0% { transform: translateY(0); }
    100% { transform: translateY(-10px); }
}

@keyframes hookMove {
    0% { transform: translateY(0); }
    100% { transform: translateY(10px); }
}


/*========================================================*/

/* ========= Start of Mobile Css ============ */

@media (min-width: 1400px) {
    /* .index-text-container p {
      bottom: 10%;
      right: 18%;
    } */
    .map-container{
        height: 412px;
    }
}

@media (max-width: 576px) {

    .modal-content .prev, 
    .modal-content .next {
        top: 37%;
        font-size: 20px;
        width: 40px;
        height: 40px;
        line-height: 40px;
     }

     .publication-container, .contact-section-info, .protfolio {
        padding: 50px 50px;
    }

    .contact-info {
        margin-top: 20px;
    }
  }
 
  @media (max-width: 768px) {

    .index-text-container {
        bottom: 50px;
        right: 0;
    }

    .index-text-container .fade-text {
        font-size: 1.2rem;
  }

  .static-dot {
    height: 6px;
    width: 6px;
  }

  .text-cycling-area {
    min-height: 25px;
    min-width: 180px;
  }

  .index-text-container {
    padding: 30px;
  }

  /* .btn-group {
    display: flex;
    flex-direction: row !important; 
    flex-wrap: wrap !important;
}

.btn-group .prot-btn {
    flex: 0 0 auto;
    margin: 5px;
    padding: 8px 12px;
    font-size: 0.7rem;
    text-align: center;
} */

.post-overlay{
    height: auto;
}
}

/* Only for Ipad Pro case */
@media only screen and (max-width: 925px) and (max-height: 1370px) {
#desktop-view-about-us {
    display: none; /* Hide the desktop version */
}

.small-desktop-about-container {
    display: none;
 }

.mobile-about-container {
    display: flex; /* Show mobile version */
    flex-direction: column;
    align-items: center;
    padding: 20px;
    text-align: justify;
}

.mobile-image-container {
    width: 100%;
    display: flex;
    justify-content: center;
}

.mobile-image-container img {
    width: 100%;
    max-width: 800px;
}

.mobile-text-container {
    font-size: 1rem;
    padding: 10px;
    line-height: 1.6;
    color: #333;
}

.small-desktop-about-container {
    display: none;
 }
}

/* ✅ Global Mobile Styles */
@media only screen and (max-width: 1000px), (max-height: 640px) {
    #menu-icon {
        display: flex;
    }
    .navbar {
        display: none;
    }
    header {
        flex-direction: row;
        align-items: center;
        position: absolute;
    }
    /* .mobile-navbar {
        display: none;
        position: fixed;
        top: 0;
        right: -100%;
        width: 150px;
        height: 36vh;
        background: var(--navbar-color) !important;
        color: var(--main-text-color) !important;
        box-shadow: -4px 0 10px rgba(0, 0, 0, 0.3);
        padding: 20px;
        text-align: right;
        transition: right 0.3s ease-in-out;
        z-index: 1002;
    } */

     .mobile-navbar {
        display: none;
        position: fixed;
        top: 0;
        right: -100%;
        /* Responsive width that works for all devices */
        width: clamp(100px, 36vw, 150px);
        /* Dynamic height that adapts to all screen sizes */
        height: auto;
        max-height: calc(100vh - 20px);
        min-height: fit-content;
        background: var(--navbar-color) !important;
        color: var(--main-text-color) !important;
        box-shadow: -4px 0 10px rgba(0, 0, 0, 0.3);
        /* Safe area padding for all devices with notches/dynamic islands */
        padding: max(env(safe-area-inset-top), 20px) 20px max(env(safe-area-inset-bottom), 20px) 20px;
        text-align: right;
        transition: right 0.3s ease-in-out;
        z-index: 1002;
        /* Enable scrolling for content overflow on any device */
        overflow-y: auto;
        overflow-x: hidden;
        /* Smooth scrolling */
        -webkit-overflow-scrolling: touch;
    }
    .mobile-navbar.active {
        right: 0 !important;
        display: flex !important;
    }

    #desktop-view-about-us {
        display: none; /* Hide the desktop version */
    }

    .mobile-about-container {
        display: flex; /* Show mobile version */
        flex-direction: column;
        align-items: center;
        padding: 20px;
        text-align: justify;
    }

    .mobile-image-container {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .mobile-image-container img {
        width: 100%;
        max-width: 360px;
    }

    .mobile-text-container {
        font-size: 1rem;
        padding: 10px;
        line-height: 1.6;
        color: #333;
    }


    /** Home**/
    .home {
        height: 100vh;
    }

    .home img {
        width: 100%;
        height: 100vh;
        object-fit: cover;
    }

    .home .text-container p{
        position: absolute;
        bottom: 10%;
        left: 5%;
        text-align: left;
        color: #ffffff;
        font-size: 1.5rem;
        font-weight: bold;
        z-index: 2;
    }

    header .logo img{
        position: relative;
    }

    
    .footer-social-icons {
        gap: 0.8rem;
    }
    
    .footer-social-icons a {
        font-size: 0.75rem;
    }
    
    .copyright {
        font-size: 0.75rem;
    }

    .btn-group {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px; /* space between buttons */
        padding: 0 10px;
        max-width: 100%;
    }

    .btn-group .prot-btn {
        /* flex: 0 0 calc(33.33% - 10px); exactly 3 per row */
        max-width: calc(33.33% - 10px);
        text-align: center;
        font-size: 0.72rem;
        padding: 10px 4px;
        white-space: nowrap;
    }
/*         
    .btn-group .prot-btn::after {
        bottom: 5px;
    } */
}

/* ✅ NEst Hub Devices */
@media only screen and (min-width: 1279px) and (min-height: 799px) and (max-width: 1280px) and (max-height: 800px) {
    .mobile-navbar ul li a {
        font-size: 1.1rem;
    }

    header .logo img{
        position: relative;
    }
    .map-container{
        height: 446px !important;
    }
    
}



/* ✅ NEst Hub Devices */
@media only screen and (min-width: 1023px) and (min-height: 599px) and (max-width: 1024px) and (max-height: 600px) {
    .mobile-navbar ul li a {
        font-size: 1.1rem;
    }

    header .logo img{
        position: relative;
    }
    
    .small-desktop-about-container {
        display: none;
     }
     .map-container{
        height: 463px !important;
    }
}
/* ✅ IPad Pro Devices */
@media only screen and (max-width: 930px) and (max-height: 1380px) {
    .mobile-navbar ul li a {
        font-size: 1.1rem;
    }

    header .logo img{
        position: relative;
    }
    
    .small-desktop-about-container {
        display: none;
     }
    
}

/* ✅ Surface  Devices */
@media only screen and (max-width: 780px) and (max-height: 1025px) {
    .mobile-navbar ul li a {
        font-size: 1.1rem;
    }

    header .logo img{
        position: relative;
    }
    
    .small-desktop-about-container {
        display: none;
     }

     

    .contact-info {
        margin-top: 20px;
    }
    
}

/* ✅ Surface Pro Devices */
@media only screen and (max-width: 550px) and (max-height: 725px) {
    .mobile-navbar ul li a {
        font-size: 1.1rem;
    }

    header .logo img{
        position: relative;
    }
    
    .small-desktop-about-container {
        display: none;
     }

     #desktop-view-about-us{
        display: none;
     }

     

    .contact-info {
        margin-top: 20px;
    }
    
}

/* ✅ iPhone Devices */
@media only screen and (max-width: 450px) and (max-height: 990px) {
    .mobile-navbar ul li a {
        font-size: 1.1rem;
    }

    header .logo img{
        position: relative;
    }

    .section-head-about-us h1{
        font-size: 2rem;
        white-space: nowrap;
    }

    /* start - Contact Us Page */
    .contact-container {
        display: flex;
        flex-direction: column; /* Stack elements */
        align-items: center;
        text-align: center;
    }

    .contact-info {
        width: 100%;
        text-align: center;
    }

    .contact-info h2 {
        font-size: 1.2rem;
    }

    .contact-info p {
        font-size: 1rem;
    }

    .map-container {
        width: 100% !important;
        max-width: 380px;
        height: 250px;
        order: 2; /* Ensure it stays below the contact info */
    }
    /*end - */

        /* Start - Blog Post Responsive */
        .publication-container {
            display: flex;
            flex-direction: column; /* Stack posts vertically */
            align-items: center;
            width: 100%;
        }
    
        .blog-post {
            width: 100% !important;
            max-width: 100% !important;
            display: flex;
            flex-direction: column;
            align-items: center;
            text-align: center;
            padding: 20px 10px;
        }
    
        .blog-post_img {
            width: 100% !important;
            max-width: 100%;
        }
    
        .blog-post img {
            width: 100%;
            height: auto;
            /* border-radius: 8px; */
        }
    
        .blog-post_info {
            width: 100%;
            max-width: 100%;
            padding: 15px 0;
        }
    
        .blog-post_tite {
            font-size: 1.2rem;
        }
    
        .blog-post_date {
            font-size: 1rem;
        }
        /* End - Blog Post Responsive */
        .gallery {
            display: flex;
            flex-direction: column;
            align-items: center;
            width: 100%;
        }
    
        .gallery .item {
            width: 100% !important;  /* Make images take full width */
            max-width: 100%;
            display: flex;
        }
    
        .gallery .item img {
            width: 100% !important;
            height: 256px;
            object-fit: cover;
        }
    
        .details {
            flex: 1;
            padding: 10px;
            text-align: left;
        }

        .detail-next {
            flex: 1;
            padding: 10px;
            text-align: left;
        }

        .detail-next span {
            position: absolute;
            bottom: 10px; /* Moves text closer to the green line */
            right: 20px; /* Aligns text to the right edge */
            direction: rtl; /* Ensures text expands from right to left */
            text-align: right; /* Aligns text properly for right-to-left languages */
            font-size: 0.5rem; /* Adjusted font size */
            font-weight: 700;
            white-space: nowrap; /* Prevents text from wrapping */
            overflow: visible; /* Ensures full visibility of text */
            text-overflow: clip; /* Ensures text doesn't get truncated */
            color:var(--navbar-color); /* Keeps text visible */
            max-width: 90%; /* Adjust for image width */
        }
    
        .details span {
            position: absolute;
            bottom: 20px; /* Moves text closer to the green line */
            right: 20px; /* Aligns text to the right edge */
            direction: rtl; /* Ensures text expands from right to left */
            text-align: right; /* Aligns text properly for right-to-left languages */
            font-size: 0.5rem; /* Adjusted font size */
            font-weight: 700;
            white-space: nowrap; /* Prevents text from wrapping */
            overflow: visible; /* Ensures full visibility of text */
            text-overflow: clip; /* Ensures text doesn't get truncated */
            color:var(--navbar-color); /* Keeps text visible */
            max-width: 90%; /* Adjust for image width */
        }
        .overlay {
            text-align: center;
         }

        
    /* End - Projects Page */

    /* Start - Modal Thumbnails Fix */
    .thumbnail-scroll-wrapper {
        display: flex;
        overflow-x: auto;
        gap: 8px;
        justify-content: center;
        padding: 10px;
        max-width: 100%;
        scrollbar-width: thin;
        margin-top: 10px; /* Ensure space between thumbnails and navigation */
    }

    .thumbnail-scroll-wrapper img {
        width: 60px;
        height: 60px;
        object-fit: cover;
        cursor: pointer;
        border-radius: 4px;
    }
    

    /* Positioning Left & Right Thumbnail Navigation Buttons */
    /* .thumbnail-nav.left {
        position: relative;
        left: -125px;
        top: -14%;
        transform: translateX(-222%);
        color: white;
        border: none;
        font-size: 1.2rem;
        cursor: pointer;
        z-index: 1000;
    }

    .thumbnail-nav.right {
        position: relative;
        right: 45px;
        top: -25%;
        color: white;
        border: none;
        font-size: 1.2rem;
        cursor: pointer;
        z-index: 1000;
        transform: translateX(-70%);
    }

    .thumbnail-nav {
        position: absolute;
        bottom: -35px !important; /* Move lower 
        left: 50%;
        transform: translateX(-50%);
        z-index: 1005;
    } */
    /* End - Modal Thumbnails Fix */

    /* Home */
   
    .home .text-container{
        margin-left: -60px  !important;
    }
    
    .home .text-container p{
        font-size: 1.3rem;
        bottom: 9%;
        left: 4%;
    }
    
    .small-desktop-about-container {
        display: none;
     }
}

/* ✅ Samsung Galaxy Devices */
@media only screen and (max-width: 412px) and (max-height: 915px) {
    .mobile-navbar ul li a {
        font-size: 1rem;
    }
    .section-head-about-us h1{
        font-size: 2rem;
        white-space: nowrap;
    }

       /* start - Contact Us Page */
       .contact-container {
        flex-direction: column;
    }

    .contact-info p {
        font-size: 0.95rem;
    }

    .map-container {
        height: 240px;
        order: 2;
    }
         /*end - */

         .publication-container {
            flex-direction: column;
        }
    
        .blog-post {
            width: 100%;
        }
    
        .blog-post_img {
            width: 100%;
        }
    
        .blog-post img {
            width: 100%;
        }
        
        /* Home */
     /* Adjust Home Page Text */
   
     .home .text-container{
        margin-left: -60px  !important;
    }
    
    .home .text-container p{
        font-size: 1.3rem;
        bottom: 9%;
        left: 4%;
    }
    
    .small-desktop-about-container {
        display: none;
     }

     .footer-social-icons {
        gap: 0.8rem;
    }
    
    .footer-social-icons a {
        font-size: 0.75rem;
    }
    
    .copyright {
        font-size: 0.75rem;
    }


    .contact-info {
        margin-top: 20px;
    }
}

/* ✅ Xiaomi Devices */
/* @media only screen and (max-width: 400px) and (max-height: 880px) {
    .mobile-navbar {
        padding: 12px;
    }

    .section-head-about-us h1{
        font-size: 2rem;
        white-space: nowrap;
    }


    .contact-container {
        flex-direction: column;
    }

    .map-container {
        height: 230px;
        order: 2;
    }

    .publication-container {
        flex-direction: column;
    }

    .blog-post {
        width: 100%;
    }

    .blog-post_img {
        width: 100%;
    }

    .blog-post img {
        width: 100%;
    }

    /* Home */
/*    
    .home .text-container{
        margin-left: -60px  !important;
    }
    
    .home .text-container p{
        font-size: 1.3rem;
        bottom: 9%;
        left: 4%;
    }
    
    .small-desktop-about-container {
        display: none;
     }
} */ 

/* ✅ Oppo Devices */
@media only screen and (max-width: 393px) and (max-height: 853px) {
    .mobile-navbar ul li {
        padding: 8px 0;
    }

    .section-head-about-us h1{
        font-size: 2rem;
        white-space: nowrap;
    }

    
    .contact-container {
        flex-direction: column;
    }

    .map-container {
        height: 225px;
        order: 2;
    }

    .publication-container {
        flex-direction: column;
    }

    .blog-post {
        width: 100%;
    }

    .blog-post_img {
        width: 100%;
    }

    .blog-post img {
        width: 100%;
    }

    /* Home */
    
    .home .text-container{
        margin-left: -60px  !important;
    }
    
    .home .text-container p{
        font-size: 1.3rem;
        bottom: 9%;
        left: 4%;
    }
    
    .small-desktop-about-container {
        display: none;
     }
}

/* ✅ BlackBerry */
@media only screen and (max-width: 380px) and (max-height: 720px) {
    .mobile-navbar ul li {
        padding: 7px 0;
    }

    .section-head-about-us h1{
        font-size: 2rem;
        white-space: nowrap;
    }


    .contact-container {
        flex-direction: column;
    }

    .contact-info h2 {
        font-size: 1rem;
    }

    .contact-info p {
        font-size: 0.9rem;
    }

    .map-container {
        height: 220px;
        order: 2;
    }

    .publication-container {
        flex-direction: column;
    }

    .blog-post {
        width: 100%;
    }

    .blog-post_img {
        width: 100%;
    }

    .blog-post img {
        width: 100%;
    }

    /* Home */
    
    .home .text-container{
        margin-left: -60px  !important;
    }
    
    .home .text-container p{
        font-size: 1.3rem;
        bottom: 9%;
        left: 4%;
    }
    
    .small-desktop-about-container {
        display: none;
     }
}

/* ✅ Vivo Devices */
@media only screen and (max-width: 375px) and (max-height: 800px) {
    .mobile-navbar {
        padding: 10px;
    }
    .mobile-navbar ul li a {
        font-size: 0.95rem;
    }

    .section-head-about-us h1{
        font-size: 2rem;
    }


    .contact-container {
        flex-direction: column;
    }

    .contact-info h2 {
        font-size: 1.1rem;
    }

    .contact-info p {
        font-size: 0.9rem;
    }

    .map-container {
        height: 215px;
        order: 2;
    }

    .publication-container {
        flex-direction: column;
    }

    .blog-post {
        width: 100%;
    }

    .blog-post_img {
        width: 100%;
    }

    .blog-post img {
        width: 100%;
    }

    /* Home */
   
    .home .text-container{
        margin-left: -60px  !important;
    }
    
    .home .text-container p{
        font-size: 1.3rem;
        bottom: 9%;
        left: 4%;
    }
    
    .small-desktop-about-container {
        display: none;
     }
}

/* ✅ Huawei Devices */
@media only screen and (max-width: 360px) and (max-height: 780px) {
    .mobile-navbar ul li a {
        font-size: 0.9rem;
    }

    .section-head-about-us h1{
        font-size: 2rem;
        white-space: nowrap;
    }

    .contact-container {
        flex-direction: column;
    }

    .map-container {
        height: 210px;
        order: 2;
    }

    .publication-container {
        flex-direction: column;
    }

    .blog-post {
        width: 100%;
    }

    .blog-post_img {
        width: 100%;
    }

    .blog-post img {
        width: 100%;
    }

    /* Home */
    
    .home .text-container{
        margin-left: -60px  !important;
    }
    
    .home .text-container p{
        font-size: 1.3rem;
        bottom: 9%;
        left: 4%;
    }
    
    .small-desktop-about-container {
        display: none;
     }

}

/* ✅ Google Pixel Devices */
@media only screen and (max-width: 340px) and (max-height: 700px) {
    .mobile-navbar ul li a {
        font-size: 0.85rem;
    }

    .section-head-about-us h1{
        font-size: 2rem;
    }

    .contact-container {
        flex-direction: column;
    }

    .contact-info p {
        font-size: 0.85rem;
    }

    .map-container {
        height: 200px;
        order: 2;
    }

    .publication-container {
        flex-direction: column;
    }

    .blog-post {
        width: 100%;
    }

    .blog-post_img {
        width: 100%;
    }

    .blog-post img {
        width: 100%;
    }

    
    .home .text-container{
        margin-left: -60px  !important;
    }
    
    .home .text-container p{
        font-size: 1.3rem;
        bottom: 9%;
        left: 4%;
    }
    
    .small-desktop-about-container {
        display: none;
     }
}

/* ✅ Galaxy Z Fold 5 Fix */
@media only screen and (max-width: 346px) and (max-height: 884px) {
    header .logo img {
        position: relative;
    }

    .section-head-about-us h1{
        font-size: 2rem;
    }

    .contact-container {
        flex-direction: column;
    }

    .contact-info h2 {
        font-size: 1.1rem;
    }

    .contact-info p {
        font-size: 0.85rem;
    }

    .map-container {
        height: 190px;
        order: 2;
    }

    .publication-container {
        flex-direction: column;
    }

    .blog-post {
        width: 100%;
    }

    .blog-post_img {
        width: 100%;
    }

    .blog-post img {
        width: 100%;
    }

    .home .text-container{
        margin-left: -60px  !important;
    }
    
    .home .text-container p{
        font-size: 1.3rem;
        bottom: 9%;
        left: 4%;
    }
    
    .small-desktop-about-container {
        display: none;
     }
}

/* ✅ Old Phones */
@media only screen and (max-width: 320px) and (max-height: 640px) {
    .mobile-navbar ul li {
        padding: 5px 0;
    }
    .mobile-navbar ul li a {
        font-size: 0.8rem;
    }

    .section-head-about-us h1{
        font-size: 1.8rem;
    }

    .contact-container {
        flex-direction: column;
    }

    .contact-info h2 {
        font-size: 1rem;
    }

    .contact-info p {
        font-size: 0.8rem;
    }

    .map-container {
        height: 180px;
        order: 2;
    }

    .publication-container {
        flex-direction: column;
    }

    .blog-post {
        width: 100%;
    }

    .blog-post_img {
        width: 100%;
    }

    .blog-post img {
        width: 100%;
    }

 
    .home .text-container{
        margin-left: -60px  !important;
    }
    
    .home .text-container p{
        font-size: 1.3rem;
        bottom: 9%;
        left: 4%;
    }

    .small-desktop-about-container {
        display: none;
     }
}

/* ========= End of Mobile  Css ============ */


/***** All Desktop Screnn **/ 

@media only screen and (min-width: 1439px) and (min-height:1079px) and (max-width: 1441px) and (max-height:1081px){
    
    .about-container {
       display: none;
    }

    .small-desktop-about-container {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        max-width: 1400px;
        margin: 0 auto;
        color:var(--main-color);
        padding: 20px;
    }

    .small-desktop-about-container {
        gap: 15px;
    }

    .small-desktop-about-image {
        max-width: 800px;
    }

    .small-desktop-text-container p {
        flex: 1;
        font-size: 1.3rem;
        line-height: 1.5;
        text-align: justify;
        font-weight: 400;
    }

    .small-desktop-highlight {
         font-size: 1.2rem;
         font-weight: 800;
    }
    
    .small-desktop-image-text-container {
        flex: 2;
        display: flex;
        font-weight: 500;
        flex-direction: column;
        align-items: flex-start;
    }
    
    /* Image Grid */
    .small-desktop-image-container {
        display: flex;
        justify-content: center;
    }
    
    .small-desktop-image-container img {
        height: 450px; /* Keeps images the same height */
        width: auto; /* Prevents stretching */
        object-fit: contain; /* Ensures image is fully visible */
        display: block;
        filter: grayscale(100%);
        transition: transform 0.3s ease-in-out;
    }

    /* Expanded Text */
.small-desktop-expanded-text {
    max-width: 74%;
    font-family: 'Raleway', sans-serif;
    font-size: 1.3rem;
    font-weight: 400;
    text-align: justify;
    position: absolute;
    right: 0;
    padding-right: 390px;
    line-height: 1.5;
    left: 3%;
    bottom: 24%;
}

}


@media only screen and (min-width: 1279px) and (min-height:1023px) and (max-width: 1281px) and (max-height:1025px){    
    .about-container {
       display: none;
    }

    .small-desktop-about-container {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        max-width: 1400px;
        margin: 0 auto;
        color:var(--main-color);
        padding: 20px;
    }

    .small-desktop-about-container {
        gap: 15px;
    }

    .small-desktop-about-image {
        max-width: 800px;
    }

    .small-desktop-text-container p {
        flex: 1;
        font-size: 16px;
        line-height: 1.5;
        text-align: justify;
        font-weight: 400;
    }

    .small-desktop-highlight {
         font-size: 1.2rem;
         font-weight: 800;
    }
    
    .small-desktop-image-text-container {
        flex: 2;
        display: flex;
        font-weight: 500;
        flex-direction: column;
        align-items: flex-start;
    }
    
    /* Image Grid */
    .small-desktop-image-container {
        display: flex;
        justify-content: center;
    }
    
    .small-desktop-image-container img {
        height: 450px; /* Keeps images the same height */
        width: auto; /* Prevents stretching */
        object-fit: contain; /* Ensures image is fully visible */
        display: block;
        filter: grayscale(100%);
        transition: transform 0.3s ease-in-out;
    }

    /* Expanded Text */
.small-desktop-expanded-text {
    max-width: 74%;
    font-family: 'Raleway', sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-align: justify;
    position: absolute;
    right: 0;
    padding-right: 390px;
    line-height: 1.5;
    left: 3%;
    bottom: 25%;
}

}

@media only screen and (min-width: 1279px) and (min-height:799px) and (max-width: 1281px) and (max-height:801px){    
    .about-container {
       display: none;
    }

    .mobile-about-container{
        display: none;
    }

    .small-desktop-about-container {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        max-width: 1400px;
        margin: 0 auto;
        color:var(--main-color);
        padding: 20px;
    }

    .small-desktop-about-container {
        gap: 15px;
    }

    .small-desktop-about-image {
        max-width: 800px;
    }

    .small-desktop-text-container p {
        flex: 1;
        font-size: 22px;
        line-height: 1.4;
        text-align: justify;
    }

    .small-desktop-highlight {
         font-size: 1.6rem;
         font-weight: 800;
    }
    
    .small-desktop-image-text-container {
        flex: 2;
        display: flex;
        font-weight: 500;
        flex-direction: column;
        align-items: flex-start;
    }
    
    /* Image Grid */
    .small-desktop-image-container {
        display: flex;
        justify-content: center;
    }
    
    .small-desktop-image-container img {
        height: 450px; /* Keeps images the same height */
        width: auto; /* Prevents stretching */
        object-fit: contain; /* Ensures image is fully visible */
        display: block;
        filter: grayscale(100%);
        transition: transform 0.3s ease-in-out;
    }

    /* Expanded Text */
.small-desktop-expanded-text {
    max-width: 74%;
    font-family: 'Raleway', sans-serif;
    font-size: 22px;
    font-weight: 400;
    text-align: justify;
    position: absolute;
    right: 0;
    padding-right: 200px;
    line-height: 1.4;
    left: 3%;
    bottom: 12%;
}

#img1 {
    width: 230px;
    height: 230px;
    margin-top: -15px;
    margin-right: -22px;
}

#img2 {
    width: 230px;
    height: 400px;
}

#img3 {
    width: 230px;
    height: 300px;
    margin-left: -25px;
}

}

@media only screen and (min-width: 1279px) and (min-height:767px) and (max-width: 1281px) and (max-height:769px){    
    .about-container {
        display: none;
     }
 
     .mobile-about-container{
         display: none;
     }
 
     .small-desktop-about-container {
         display: flex;
         align-items: flex-start;
         justify-content: space-between;
         max-width: 1400px;
         margin: 0 auto;
         color:var(--main-color);
         padding: 20px;
     }
 
     .small-desktop-about-container {
         gap: 15px;
     }
 
     .small-desktop-about-image {
         max-width: 800px;
     }
 
     .small-desktop-text-container p {
         flex: 1;
         font-size: 22px;
         line-height: 1.6;
         text-align: justify;
     }
 
     .small-desktop-highlight {
          font-size: 1.6rem;
          font-weight: 800;
     }
     
     .small-desktop-image-text-container {
         flex: 2;
         display: flex;
         font-weight: 500;
         flex-direction: column;
         align-items: flex-start;
     }
     
     /* Image Grid */
     .small-desktop-image-container {
         display: flex;
         justify-content: center;
     }
     
     .small-desktop-image-container img {
         height: 450px; /* Keeps images the same height */
         width: auto; /* Prevents stretching */
         object-fit: contain; /* Ensures image is fully visible */
         display: block;
         filter: grayscale(100%);
         transition: transform 0.3s ease-in-out;
     }
    
     /* Expanded Text */
.small-desktop-expanded-text {
    max-width: 74%;
    font-family: 'Raleway', sans-serif;
    font-size: 22px;
    font-weight: 400;
    text-align: justify;
    position: absolute;
    right: 0;
    padding-right: 200px;
    line-height: 1.6;
    left: 3%;
    bottom: 1%;
}
.about-container {
    display: none;
 }

 .mobile-about-container{
     display: none;
 }

 #img1 {
    width: 230px;
    height: 230px;
    margin-top: -15px;
    margin-right: -22px;
}

#img2 {
    width: 230px;
    height: 400px;
}

#img3 {
    width: 230px;
    height: 300px;
    margin-left: -25px;
}
}


@media only screen and (min-width: 1359px) and (min-height:767px) and (max-width: 1367px) and (max-height:769px){

    header{
        position: relative; /* Ensure the header stays in place */
        padding: 0 2rem; /* Adjust padding as needed */
        width: 100%;
        max-width: 100%; /* Ensure it stretches across the full width */
        overflow-x: hidden; /* Prevents horizontal scroll caused by padding */
        z-index: 10; /* Ensure the header is layered above the content */
        background-color: transparent; /* Transparent background */
        display: flex;
        justify-content: space-between;
        align-items: center;
        transition: background-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
        flex-direction: unset;
    }
    body.index-page {
        overflow-y: hidden; /* Hide vertical scrollbar */
    }
    
    /* Allow scrollbar for all other pages */
    body:not(.index-page) {
        overflow-y: auto; /* Show vertical scrollbar */
    }
    header.shadow
    {
        background: var(--text-color);
    }
    
    header .logo img {
        width: 70px; /* Make the logo bigger */
        height: auto;
        opacity: 1; /* Make the logo more visible */
        /* margin-left: -25px; */
        right: 0;
    }


    header .navbar{
        display: flex;
        column-gap: 2.5rem;
    }
    
    .navbar li{
        position: relative;
    }
    
    .navbar a {
        font-weight: 700;
        color: var(--text-color);
        text-transform: uppercase;
    }
    
    .navbar a span{
        font-size: 0.60rem;
    }
    
    .navbar a::after{
        content: '';
        width: 0;
        height: 2px;
        background-color: var(--main-text-color);
        position: absolute;
        bottom: -4px;
        left:0px;
        transition: 0.4s all linear;
    }
    
    .navbar a span::after{
        font-size: 0.20rem;
    }
    
    .navbar a:hover::after, .navbar .home-active::after{
        width: 100%;
    }

    .mobile-navbar{
        display: none;
    }

    #menu-icon{
        display: none;
    }

    .about-container {
        display: none;
     }
 
     .mobile-about-container{
         display: none;
     }
 
     .small-desktop-about-container {
         display: flex;
         align-items: flex-start;
         justify-content: space-between;
         max-width: 1400px;
         margin: 0 auto;
         color:var(--main-color);
         padding: 20px;
     }
 
     .small-desktop-about-container {
         gap: 15px;
     }
 
     .small-desktop-about-image {
         max-width: 800px;
     }
 
     .small-desktop-text-container p {
         flex: 1;
         font-size: 22px;
         line-height: 1.6;
         text-align: justify;
     }
 
     .small-desktop-highlight {
          font-size: 1.6rem;
          font-weight: 800;
     }
     
     .small-desktop-image-text-container {
         flex: 2;
         display: flex;
         font-weight: 500;
         flex-direction: column;
         align-items: flex-start;
     }
     
     /* Image Grid */
     .small-desktop-image-container {
         display: flex;
         justify-content: center;
     }
     
     .small-desktop-image-container img {
         height: 450px; /* Keeps images the same height */
         width: auto; /* Prevents stretching */
         object-fit: contain; /* Ensures image is fully visible */
         display: block;
         filter: grayscale(100%);
         transition: transform 0.3s ease-in-out;
     }
    
     /* Expanded Text */
.small-desktop-expanded-text {
    max-width: 74%;
    font-family: 'Raleway', sans-serif;
    font-size: 22px;
    font-weight: 400;
    text-align: justify;
    position: absolute;
    right: 0;
    padding-right: 139px;
    line-height: 1.6;
    left: 2%;
    bottom: 8%;
}
.about-container {
    display: none;
 }

 #img1 {
    width: 230px;
    height: 230px;
    margin-top: -15px;
    margin-right: -22px;
}

#img2 {
    width: 230px;
    height: 400px;
}

#img3 {
    width: 230px;
    height: 300px;
    margin-left: -25px;
}  
}


@media (max-width: 1024px) {
  .section-head-about-us h1 {
    font-size: 2.2rem; /* shrink title */
  }
  section {
    padding: 30px 40px; /* reduce padding */
  }
      .mobile-about-container {
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 20px;
        text-align: justify;
    }

    .mobile-image-container img {
        width: 100%;
        max-width: 360px;
    }

    .mobile-text-container {
        font-size: 1rem;
        padding: 10px;
        line-height: 1.6;
        color: #333;
    }
}


@media only screen and (min-width: 1679px) and (min-height:1049px) and (max-width: 1681px) and (max-height:1051px){
    .expanded-text {
        max-width: 74%;
        line-height: 1.8;
        text-align: left;
        position: absolute;
        right: 0;
        padding-right: 410px;
        left: 3.5%;
        bottom: 32%;
    }
}

@media only screen and (min-width: 1590px) and (min-height:1190px) and (max-width: 1601px) and (max-height:1201px){
    .expanded-text {
        padding-right: 330px;
        left: 1.3%;
        bottom: 41%;
    }
}

@media only screen and (min-width: 1918px) and (min-height:1078px) and (max-width: 1921px) and (max-height:1098px){
    .expanded-text {
        padding-right: 486px;
        left: 9.4%;
        bottom: 34%;
    }
}


@media only screen and (min-width: 1918px) and (min-height:1099px) and (max-width: 1921px) and (max-height:1201px){
    .expanded-text {
        padding-right: 486px;
        left: 9.4%;
        bottom: 40%;
    }
}

@media only screen and (min-width: 1990px) and (min-height:1450px) and (max-width: 2050px) and (max-height:1550px){
    .expanded-text {
        padding-right: 582px;
        left: 11.95%;
        bottom: 54%;
    }
}


@media (min-width: 2560px) {
    .home {
        height: 120vh;
    }

    .home img {
        object-fit: cover;
        height: auto;
        max-height: 100%;
    }

    .home .media-icons {
        right: 40px;
        gap: 25px;
    }

    .home .slider-navigation {
        bottom: 450px;
        gap: 20px;
    }

    .slider-navigation .nav-btn {
        width: 25px;
        height: 25px;
    }
}

@media (min-width: 1500px) {

    .home img {
        object-fit: cover;
        height: auto;
        max-height: 100%;
    }

    .home .media-icons {
        right: 40px;
        gap: 25px;
    }

    .home .slider-navigation {
        bottom: 250px;
        gap: 20px;
    }

    .slider-navigation .nav-btn {
        width: 25px;
        height: 25px;
    }
}

/* 1) Keep the portfolio grid centered */
.protfolio .fg-grid {
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
}

/* 2) On small screens, neutralize the grid's negative margins */
@media (max-width: 767.98px) {
  .protfolio .fg-grid {
    margin-left: 0;
    margin-right: 0;
  }
}

/* 3) Ensure the image itself is centered and block-level */
.gallery .item picture,
.gallery .item img {
  display: block;
  margin: 0 auto;
}

/* 4) Soften global section padding on phones */
@media (max-width: 575.98px) {
  section { padding: 30px 20px; }
}