body {
    font-family: 'Arial', sans-serif;
}
*::selection{
    background-color:rgb(162, 170, 218);
}

h1, h2 {
    color: #333;
}
nav.navbar{
    background:rgb(222, 227, 239);
    text-shadow: 2px 2px 5px rgba(255, 255, 255, 0.61); 

}

  .nav-link.active {
    text-shadow: 2px 2px 5px rgba(145, 145, 155, 0.61); 

  }
  .nav-item {
    position: relative;
    display: inline-block;
    padding: 5px 12px;
    font-weight: 500;
    text-decoration: none;
    color: #333; 
    transition: color 0.3s ease;
}

.nav-item::after {
    content: '';
    position: absolute;
    width: 0; /* Initialement caché */
    height: 2px;
    background-color: #3C7BA4; 
    bottom: 0;
    left: 50%; /* Centrer horizontalement */
    transform: translateX(-50%); /* Ajuster pour centrer complètement */
    transition: width 0.3s ease-in-out;
}

.nav-item:hover {
    color: #3C7BA4; 
}

.nav-item:hover::after {
    width: 100%; /* Remplir la largeur du texte au survol */
}
  
nav .nav-link{
    font-weight: bold;

}
 /* Styles pour la page d'accueil */
 #home {
    height: 100vh; 
    display: flex;
    align-items: center; 
    justify-content: center; 
    text-align: center;
    background: linear-gradient(rgba(192, 196, 220, 0.44),rgba(196, 202, 224, 0.44)),url('img/background.jpg') no-repeat center center ; 
    background-size: cover;
    color: white; 
}
#home h1 {
    font-size: 6.5rem; 
    font-family: "Playfair Display", serif;
    font-optical-sizing: auto;
    font-style: normal;
    color: #f8f9fa;
    text-shadow: rgb(109, 108, 101) 1px 0 10px;
}
#home p {
    font-size: 1rem;  
    text-shadow: rgb(92, 91, 86) 1px 0 10px;

}

#apropos .display-4{
    font-weight: bold;
    font-size: 40px;
}
#formation {
    background-color:rgb(249, 249, 249);
    border-radius: 10px; 
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1); 
    padding: 1rem 2rem; 
   
}
h1.mb-4{
    font-weight: bold;
    margin-top: 30px;
}

.formation-item {
    padding: 20px; 
    background-color: #E2EDF3;
    border-radius: 8px; 
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); 
    transition: transform 0.3s; 
}

.formation-item:hover {
    transform: translateY(-3px); 
}

.formation-item i {
    color: #3C7BA4; 
}

.formation-item h5 {
    font-size: 1.5rem;
    color: #333; 
    margin-top: 10px; 
    font-weight: 600;
}

.formation-item p {
    font-size: 1rem; 
    color: #666; 
    margin: 0; 
}
#skills {
    background-color: rgb(249, 249, 249);
    border-radius: 10px; 
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1); 
}

.skill-card {
    background-color: #E2EDF3;
    padding: 20px; 
    border-radius: 8px; 
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); 
    transition: transform 0.3s; 
    text-align: center; 
}

.skill-card:hover {
    transform: translateY(-3px);  
}

.skill-card i {
    color: #3C7BA4; 
    font-size: 3rem; 
    padding-bottom: 10px;
}

.skill-card h5 {
    font-size: 0.95rem;  
    color: #333; 
    margin-top: 10px; 
}
.skill-card img{
    padding-bottom: 10px;

}



#about {
    background-color: #f8f9fa;
}

.card-img-wrapper {
    position: relative;
    overflow: hidden;
}

.card-img-wrapper img {
    transition: transform 0.3s ease;
}

.card-img-wrapper:hover img {
    transform: scale(1.1);
}

.card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); 
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.card-img-wrapper:hover .card-overlay {
    opacity: 1;
}

.card-overlay h5 {
    color: white;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
}

.project-card {
    border: none;
    border-radius: 15px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.project-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
   
}

.card-bod {
    background-color: #fff;
    padding: 20px;
    text-align: center;
    border-radius: 15px;

}


.card-bod p {
    color: #333;
}
.experience-card {
    border: none;
    border-radius: 15px;
    background-color: #fff;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    

}

.experience-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
   
}

.card-title {
    font-size: 1.25rem;
    font-weight: bold;
    margin-bottom: 10px;
}

.card-text {
    font-size: 1rem;
    color: #666;
}

h2.mb-4 {
    font-weight: bold;
    padding: 10px;
}
h3.mb-3 {
    font-size:1.3rem ;
}

.experience-icon {
    text-align: center;
    margin-bottom: 15px;
    color: #3C7BA4; 
}

.experience-icon i {
    font-size: 3rem;
}
#experiences{
    background-color: #E2EDF3;
    
}

@keyframes fadeInUp {
    0% {
      opacity: 0;
      transform: translateY(20px);
    }
    100% {
      opacity: 1;
      transform: translateY(0);
    }
  }
  
  .animated-item {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.5s ease, transform 0.5s ease;
  }
  
  .animated-item.active {
    opacity: 1;
    transform: translateY(0);
    animation: fadeInUp 1s ease forwards;
  }
    

@media (max-width: 768px) {
    .experience-card {
        margin-bottom: 20px;
    }
    #home p {
        margin: 0 25px;    
    }
    #home h1 {
        font-size: 5.3rem; 
        padding-bottom: 20px;
    }
            .nav-item {
            position: relative;
            display: inline-block; 
            text-decoration: none; 
            padding: 10px 12px; 
        }
        
        .nav-link {
            display: inline-block; 
            font-weight: 500;
            text-decoration: none;
            color: #333; 
            transition: color 0.3s ease;
            border-top: 2px solid transparent; 
            border-bottom: 2px solid transparent;
        }
        
        .nav-item:hover .nav-link {
            color: #3C7BA4; 
            border-top-color: #3C7BA4;
            border-bottom-color: #3C7BA4;
        }
        .nav-item::after {
            display: none; 
        }
}

#contact a {
    margin-right: 10px;
}
.btn-cv {
    position: relative;
    background-color:#3C7BA4;
    color:rgb(235, 236, 243);
    padding: 10px 25px;
    border: 1px solid transparent;
    border-radius: 5px;
    font-size: 16px;
    transition: all 0.3s ease;
    text-decoration: none;
    display: inline-block;
    overflow: hidden;
    z-index: 1;
}

.btn-cv::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:rgb(235, 238, 243);
    z-index: -1;
    transition: all 0.3s ease;
    transform: scaleX(0);
    transform-origin: right;
}

.btn-cv:hover::before {
    transform: scaleX(1);
    transform-origin: left;
    
}

.btn-cv:hover {
    color:#3C7BA4;
    border:solid 1px #3C7BA4;

}
.btn-email {
    color: #3C7BA4; 
    border: 1px solid #3C7BA4 ;
    padding: 6px 24px;
    border-radius: 5px;
    transition: all 0.3s ease;
}

.btn-email:hover {
    background-color: #3C7BA4; 
    color: #ffffff; 
}


#contact{
    background-color: #E2EDF3;
    padding-top: 50px;
}


 .footer-para {
    text-align: center; 
    font-size: 0.8rem; 
    position: relative; 
    bottom: 0; 
    width: 100%; 
    background-color: #E2EDF3;
    padding-top: 80px;


}


