
/* ......................Header.............................. */

.custom-navbar {
    background: linear-gradient(to right, #0e1c19, #063c2a, #1e5e4b);

}


nav .logo{
    width:100%;
    max-width:70px;
    width: 40px;
    height:auto;
    background-color:#c7e9d7!important; 
    box-shadow: #000000 0px 0px 5px;
}

nav .navbar-brand{
    font-size: 18pt;
    font-family: Roboto;
    color: #f1f1f1;
    font-family:  sans-serif;
    font-weight: bold;
    padding: auto;
}

@media screen and (min-width: 768px) {
    nav .navbar-brand{
       margin-left: 2%;
    }
    
}

/* Styling for the navbar when collapsed */
.navbar-toggler {
    border: none; /* Remove the border of the toggle button */
    background-color: #2d7e63; /* Customize the toggle button background color */
}

/* Change the background color of the collapsed menu */
.navbar-collapse {
    background-color: rgba(0, 0, 0, 0.001)!important; /* Light background for the collapsed menu */
}

/* Style the navbar links */
.navbar-nav .nav-link {
    color: #ffffff; /* Set the text color for the links */
    padding: 10px 20px; /* Add some padding for a bigger touch area */
    font-size: 18px; 
    font-weight: 500; 
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 1);
}
.navbar-nav .nav-link.active{
    color: #ffffff; /* Active link color */
}

/* Change the color of the nav links on hover */
.navbar-nav .nav-link:hover {
    background-color: #0b3f37; /* Change the background on hover */
    color: white; /* Change the text color on hover */
}


/* Customize the navbar brand on hover */
.navbar-brand:hover {
    color: #f1f1f1; /* Change color on hover */
}

/* When the menu is expanded, change the link color */
.navbar-nav .nav-item.active .nav-link {
    color: #f1f1f1; /* Active link color */
}



/* ......................HOME.............................. */
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    scroll-behavior: smooth;
    background-color: #f1f1f1;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.wrapper {
    flex: 1;
}



.home{
    display: flex;
    background: linear-gradient(to right, #0e1c19, #063c2a, #1e5e4b);
    border: none;
    margin: 0;
    padding: 0%;
}

.card-body{
    margin: 10% 0% 5% 0%;
    padding: 2%;
}


.home h5{
    color: #f1f1f1;
    font-size: 25pt;
    font-family:  Atkinson Hyperlegible Next;
    text-align: center;
}

.home p{
    color: #ffffff;
    font-size: 12.7pt;
    font-family: Roboto;
    text-align: center;
}

#explore{
    background-color: #f1f1f1;
    color: #34746a;
    font-size: 12pt;
    font-family: Roboto;
     transition: all 0.3s ease-in-out;

}

#explore:hover{
    background-color: #E9EFEC;
    color: #000000;
    font-size: 10pt;
    font-family: Roboto;
    border: 3pt solid #34746a;
}

.image-container {
    position: relative;
    width: 100%;
    height: 300px;
    overflow: hidden;
    border-radius: 10px;
    margin-top: 10%;
    margin-bottom: 4%;
}

.image-wrapper {
    position: absolute;
    width: 100%;
    height: 100%;
}

.image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: none; /* initially hidden, shown by JS */
    border-radius: 10px;
}



@media (min-width: 1200px) {

  

    .home {
        width: 100%;
        height: 85vh; /* Adjust height for larger screens */
    }

    .home h5{
        font-size: 35pt;
        margin: 2%;
    }
    
    .home p{
        font-size: 18pt;
        line-height: 1.8;
    }

    #explore{
        font-size: 12pt;
        margin: 2%;
    }

    .image-container {
        height: 65vh;
        margin: 10%;
    }
    
}

/* .....................About.............................. */



.about{
    overflow: none;
    border: none;
    margin: 2%;
    padding: 4% 2%;
    z-index: 10;

}

.about h5{
    color: #16423C;
    font-size: 20pt;
    font-family:  sans-serif;
    text-align: center;
    font-weight: 540;
    text-align: center;
}

.about p{
    color: #000000;
    font-size: 12.7pt;
    font-family: Roboto;
    text-align: justify;
}





/* ......................Home Responsive............................ */


@media screen and (max-width: 600px){
.img3 {
  width: 100%;
  height: 100%;
  margin-bottom: 5%;
}
.img21 , .img22{
    display: none !important;
    width: 100%;
    height: 40vh;
    border-radius: 10px;
    margin: 20% 1% 2% 1%;
}
}

/* Hide .img3 on tablets and up */
@media (min-width: 768px) {
  .img3 {
    display: none !important;
  }
}

/* ✅ Small Tablet (600px–767px) — e.g., iPad Mini, Galaxy Tab A 8") */
@media screen and (min-width: 600px) and (max-width: 768px) 
  and (orientation: portrait) 
  and (hover: none) 
  and (pointer: coarse) {
  
  .img21 {
    display: block;
    width: 100%;
    height: 40vh;
    border-radius: 10px;
    margin: 15% 1% 2% 1%;
  }

  .img22 {
    display: block;
    width: 100%; /* avoid 120% */
    height: 48vh;
    margin: 25% 1% 0% 1%;
  }

  .img3 {
    display: none !important;
  }
}

/*  ✅ Large Tablet (768px–1366px) — e.g., iPad Pro, Tab S7 FE)
 Large Tablets Portrait */
@media screen and (min-width: 769px) and (max-width: 1366px) and (pointer: coarse)and (hover: none)  {

  .img21{
    display: block !important;
    width: 100% !important;
    height: 50vh !important;
    margin: 15% 0% 0% 1% !important;
    box-shadow: none !important;
    margin: 1%;
  }

  .img22 {
    display: block !important;
    width: 100% !important;
    height: 50vh !important;
    margin: 20% 1% 0% 1% !important;
    box-shadow: none !important;
  }

  .img3 {
    display: none !important;
  }

 
  .about p{
        font-size: 15pt !important;
        line-height: 2;
    }
.Project-container li{
        font-size: 15pt !important;
        line-height: 2;
        font-family: Roboto;
    }
  
} 

@media screen and (min-width: 769px) and (pointer: fine) and (hover: hover) {
  /* Desktop-specific styles */
  .img21{
    display: block !important;
    width: 100% !important;
    height: 65vh !important;
    margin: 15% 0% 0% 1% !important;
    box-shadow: none !important;
    margin: 1%;
  }

  .img22 {
    display: block !important;
    width: 100% !important;
    height: 75vh !important;
    margin: 20% 1% 0% 1% !important;
    box-shadow: none !important;
  }

  .img3 {
    display: none !important;
  }

 
  .about p{
        font-size: 15pt !important;
        line-height: 2;
    }
.Project-container li{
        font-size: 15pt !important;
        line-height: 2;
        font-family: Roboto;
    }
  
}

  



/* ......................Project-container Projrcts............................. */


@media screen and (max-width: 600px) {
.Project-container{
    margin: 3% 0% 3% 0%;
    line-height: 2;
    align-items: start;
}


 
.Project-container li{
    font-family: Roboto;
    font-size: 12.7pt;
}

.Project-container h3{
    color: #16423C;
    font-size: 20pt;
    font-family:  sans-serif;
    text-align: left;
}
}



/* ......................Footer.............................. */

footer {
    background-color: #343a40; /* Dark background */
    color: #ffffff; /* White text */
}
footer a {
    color: #ffffff; /* White links */
    text-decoration: none; /* Remove underline */
}
footer a:hover {
    text-decoration: underline; /* Underline on hover */
}
.social-icons a {
    margin: 0 10px; /* Space between social icons */
}


/* 
===========================================================================
=========================================================================
=====================================================================


......................Explore............................. */


.expo-container .card {
    border-radius: 10px;
    box-shadow: 0 6px 15px rgba(1, 29, 17, 0.3) !important;
    background-color: #f1f1f1;
}



/* Scroll to Top Button */
.gotopbtn{
    bottom: 50%;
    right: 5%;
    background-color: #2d7e63; /* Customize the button color */
    color: white; /* Text color */
    border: none; /* Remove border */
    border-radius: 40%; /* Circular button */
    width: 35px; /* Button size */
    height: 35px; /* Button size */
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer; /* Pointer cursor on hover */
    font-size: 24px; /* Font size for the icon */
    z-index: 1000; /* Ensure it's above other elements */

    animation-name: appear;
    animation-timeline: scroll(y);

 

}

@keyframes appear {
    0% { 
        opacity: 0; 
        display: none;
        position: fixed;
    }

    3%{
        opacity: 0; 
        display: none;
        position: fixed;
    }

    3.5% { 
        opacity: 0; 
        display: block;
        position: fixed;
    }

    100% { 
        opacity: 1; 
        display: block;
        position: fixed;
    }
}