@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap');

*{
    margin: 0;
    padding: 0;
    font-family: "Roboto Condensed", sans-serif;
}

:root{
--white_color:white;
--black_color:black;
--green_color: #378110 ;
--green_clear: #C6DFCC;
--red_clear: #FE715F;
--yellow_clear: #FCB54B ;
--blue_clear:#A9E3F7 ;

}
/* scroll */
html{
    scroll-behavior: smooth;
}
/* première page */
.accueilone{
    width: 100%;
    height: 100vh;
    background-image: url(image/le\ jardin\ des\ séraphin\ .webp);
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    background-attachment: fixed;
}

/* bar nav responsive */


.bar-nav-responsive{
    width: 100%;
    height: 120px;
    background-color: var(--white_color);
    display: none;
    align-items: center;
    justify-content: space-between;
    z-index: 30;
    position: fixed;
    top: 0;
}

.logo_nav_responsive{
    height: 100%;
    margin-left: 20px;
    display: flex;
    align-items: center;
    
}

.logo_nav_responsive img{
    width: 100%; 
    max-width: 120px; 
    height: 100%; 
}

.number_nav_responsive{
    display: flex;
    justify-content: center;
    align-items:center;
    height: 100%;

}

.number_nav_responsive a{
    text-decoration: none;
    color: black;
    font-size: 30px;
}

.menu_burger{
    
    height: 100%;
    margin-right: 20px;
   
    display: flex;
    justify-content: end;
    align-items: center;
}

.menu{
    height: 50px;
    width: 50px ; 
    background-color: var(--red_clear);
    border-radius: 5px;
    cursor: pointer;
}

.menu div{
    position: relative;
    width: 40px;
    height: 40px;
    margin: 5px;
    
}

.menu span{
    background-color: var(--white_color);
    width: 100%;
    height: 5px;
    border-radius: 5px;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: transform 0.5s, width 0.5s;
}

.menu .line1{
    transform: translate(-50%, -15px);
}
.menu .line3{
    transform: translate(-50%, 10px);
}

.openmenu .line1{
    transform: translate(-50%, -50%) rotate(-45deg);

}
.openmenu .line3{
    transform: translate(-50%, -50%) rotate(45deg);

}
.openmenu .line2{
    width: 0;

}

.nav_top{
    display: inline;
    position: fixed;
    top: 0;
    background-color: var(--white_color);
    width: 100%;
    height: 135px;
    border-bottom: 2px solid black;
    display: flex;
    justify-content: space-between;
    align-items: center;

}
.nav_bottom{
    position: absolute;
    bottom: 0;
    background-color: var(--white_color);
    width: 100%;
    height: 120px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}


.logo_nav {
    width: 33%;
    margin-left: 20px;
    height: auto;
    display: flex;
    align-items: center;
}

.logo_nav img {
    width: 100%; /* Utilisez la largeur totale disponible dans le conteneur */
    max-width: 120px; /* Limite la taille maximale de l'image */
    height: auto; /* Maintient les proportions de l'image */
}


.liste_nav{
    width: 33%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.liste_nav ul{
    display: flex;

}
.liste_nav ul li{
    list-style: none;
    margin:10px ;
}
.liste_nav ul li a{
    text-decoration: none;
    color: var(--black_color);
    font-size: 1.875em;
}
.nav{
    z-index: 2;
}
.number_nav{
   
    width: 33%;
    height: 100%;
    margin-right: 20px;
    display: flex;
    justify-content: end;
    align-items: center;
    
}

.number_nav a{
    text-decoration: none;
    font-size: 30px;
    color: var(--black_color);
}

.info-acceuil{

    width: 100%;
    height: calc(100% - 120px);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    
}
.content_img{
    text-align: center;
    width: 100%;
    height: 50%;
}
.logo_acceuil{
   
    width: 100%;
    height: 100%; 
}

.logo_acceuil img{
    max-width: 100%;
    max-height: 100%;
}

.background-info{
    margin: 20px;
    padding: 10px;
    background-color: rgb(0, 0, 0 , 0.5);
    border-radius: 25px;
    box-shadow: 5px 15px 30px; 
    margin-bottom: 50px;
    
    
}
.content_background{
    height: 50%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: end;
}
.background-info h1{
    text-align: center;
    color: var(--white_color);
    font-size: 60px;
   
}
/* Présentatoin / première page */
.acceuil{
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    
    
}

.titre_acceuil{
 margin-top: 150px;
    text-align: center;
    
}
.titre_acceuil h1{
    color: var(--green_color) ;
    font-size: 40px;
}

.acceuil_content{
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
}

.box_left{
    padding:25px;
    width: 50%;
    height: 90%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    
}
.test{
    position: relative ;
    width: 70%;
    height: 90%;
}
.image_presentation{
    
    background-image: url(image/nettoyage\ sépulture.webp);
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 50% 50% 0 0;
    border: 2px solid var(--black_color);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}



 .img_presentation{
    width: 70%;
    position: absolute;
    bottom:0;
    background-color: rgba(255, 255, 255, 0.479);
} 

.box_right{
    
    width: 50%;
    height: 90%;
    display: flex;
    justify-content: center;
    align-items: center;
    border-left: 1px solid var(--black_color);
}

.box_right p {
    width: 90%;
    height: 90%;
    font-size: calc(1.10vw + 1vh);
    display: flex;
    align-items: center;
    text-align: justify;
}


/* Charte */
.charte{
    width: 100%;
    
    display: flex;
    
    flex-direction: column;
}

.titre_charte_content{
    display: flex;
    justify-content: center;
    text-align: center;
    width: 100%;
    padding-top: 150px;
  
}


.titre_charte{
    padding:  30px 90px;
    position: relative;
 
}

.titre_charte h2{
    font-size: calc(2vw + 1.2vh);
}

.titre_charte h2::before{
    content: '';
    height: 30px;
    width: 30px;
    position: absolute;
    top: 0;
    left: 0;
    border-left: 10px solid #FCB54B ;
    border-top: 10px solid #FCB54B ;

}

.titre_charte h2::after{
    content: '';
    height: 30px;
    width: 30px;
    position: absolute;
    bottom: 0;
    right: 0;
    border-right: 10px solid #FCB54B ;
    border-bottom: 10px solid #FCB54B ;

}


.content_charte{
    
    padding: 50px 30px;
    display: grid;
    grid-template-columns: repeat(2 , 1fr);
    gap: 35px 35px;
    
}
.box-pad{
    display: flex;
    align-items: center; 
    border: 2px solid var(--black_color);
    border-radius: 0 40px 40px 0;
    margin-top: 10px;
    
    height: 115px;
    
}

.symbol_content{
    position: relative;
    width: 8vw;
    height: 100%;
    background-color: var(--green_clear);
    border-radius:0 0 145px 0;
    box-shadow: 0  4px  4px 0 ;
    margin-right: 10px;
}
.symbol_content p{
    position: absolute;
    
    left: 15px;
    font-size: calc(2.5vw + 0.2vh);
}

.charte_name p{
   
    font-size: calc(1.2vw + 0.3vh);
    width: 100%;
    height: 10%;

}

/* Tarifs */

.tarif{
    width: 100%;
    
    
}

.titre_offre{
    padding: 15px;
    margin-top: 60px;
    
    justify-content: center;
    
}

.titre_offre h3{
    text-align: center;
    font-size: 30px ;
}

.ponctuelle_case{
    width: 100%;
    margin-top: 25px;
    display: flex;
    padding-bottom: 20px;
    justify-content: center;
    border-bottom: 2px solid gray;
    
}

.tarif_content {

    height: 100%;
    width: 90%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    /* background-color: red; */
}

.ponctuelle_card{
    width: 470px;
    height: 500px;
    border-radius: 25px;
   margin-left: 10px;
 margin-right: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.titre_card{
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background-color: var(--white_color);
    width: 90%;
    height: 20%;
    border-radius: 25px;
    margin-top: 20px;
    box-shadow: 3px 3px 5px black;
}

.titre_card h4{
    padding: 5px;
    font-size: 30px;
    line-height: 30px;
}

.titre_card span{
    font-size: 20px;
}


.liste_prix{
    padding: 5px;
    width: 100%;
    height: 50%;
    border-bottom: 2px solid var(--black_color);
    display: flex;
    align-items: center;
    justify-content: center;
    
}

.liste_prix ul li{
    list-style: none;
    font-size: 25px;
   
}

.liste_prix ul li , p{
   font-size: 25px;
    
}
.liste_prix p{
    text-align: center;
}
.liste_description{
    margin: 20px 10px;
    display: flex;
    align-items: center;
    width: 100%;
    height: 50%;
    padding: 10px;
    background-color: rgb(255, 255, 255);
    border-radius: 0px 0px 15px 15px;
    box-shadow: 1px 1px 6px black;
}

.liste_description ul li{
    font-size: 25px;
    list-style: none;
}

.liste_description p{
    text-align: center;
    font-size: 25px;
}

.titre_offre_two{
    padding: 15px;
    margin-top: 30px;
    display: flex;
    justify-content: center;
    text-align: center;
}

.titre_offre_two h3{
    font-size: 30px ;
    text-decoration: underline;
}

.content_forfait{
    padding: 10px;
    margin: 25px;
   
    
    
}
.titre_saison{
    margin: 10px 0;
}
.titre_saison h2{
    font-size: 30px;
    text-decoration: underline;
}
.description_saison{
    line-height: 35px;
    padding: 10px;
    margin: 10px;
}
.table-sepulture {
    border-collapse: collapse; /* Supprime les espaces entre les bordures */
    width: 50%; /* Largeur du tableau */
    background: white;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    margin: 5px;
}

.table-sepulture th, 
.table-sepulture td {
    border: 1px solid #ccc; /* Bordures fines pour les cellules */
    padding: 15px;
    text-align: center;
}

.table-sepulture th {
    background-color: #f4f4f4;
    font-size: 1.2em;
}

.vertical-text {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    transform: rotate(180deg); /* Texte de bas en haut */
    background-color: #f4f4f4;
    font-weight: bold;
    padding: 10px;
  width: 10%;
  
}
.tableau{
    width: 100%;
    display: flex;
   

}
.posibiliter-paiement{
    padding: 20px;
    font-size: 1.2em;
}


.toggle-element {
    border: 1px solid #ccc;
    border-radius: 4px;
    margin-top: 10px;
    margin-bottom: 10px;
    cursor: pointer;
    overflow: hidden;
    box-sizing: border-box; /* Ajoute cette ligne pour un meilleur contrôle */
    width: 100%; /* S'assure que l'élément prend toute la largeur disponible */
}

.toggle-title {
    background-color: #f5f5f5;
    margin-top: 0px;
    padding: 10px;
    position: relative;
    box-sizing: border-box; /* Ajuste les bordures et marges */
    text-align: left;
}

.toggle-title::after {
    content: '▶'; /* Flèche droite */
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
}

.content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
    word-wrap: break-word; /* Force les mots à se couper si nécessaire */
    box-sizing: border-box;
    padding: 0 10px; /* Ajout de padding pour un texte lisible */
}

.content.active {
    max-height: 500px; /* Adaptez selon la taille du contenu */
    padding: 10px 10px; /* Ajoute un padding visible uniquement si actif */
}
.description p{
    font-size: 20px;
}

.simple{
    
    display: flex;
    width: 100%;
    
}

.description_card_etoile{
 padding: 30px;
 
}

.description_card_etoile ul{
    padding: 15px;
    width: max-content;
    /* border: 1px solid black; */
}

.description_card_etoile ul li{
    /* list-style: none; */
    font-size: 20px;
    
}

.align-text {
    display: flex;
    justify-content: center;
}

.red{
    text-decoration:underline var(--red_clear);
}

.blue{
    text-decoration:underline var(--blue_clear);
}

/* contact */

.contact{
    width: 100%;
    
    display: flex;
    flex-direction: column;
}

.content_contact{
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
}

.coordonee{
    width: 50%;
    height: 90%;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-right: 2px solid var(--black_color);
}
.title_coordonee{
    text-align: center;
    padding: 20px;
}

.title_coordonee h2{
    font-size: 35px;
}

.liste_coordones{
    
    height: 200px;
    width: 90%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 2px solid var(--black_color);
}

.liste_coordones ul li{
    list-style-type: none;
    line-height: 30px;
}

.liste_coordones ul li a{
    text-decoration: none;
    font-size: 25px;
    color: var(--black_color);
}

.contact_image{
    
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact_image img{
    width: 90%;
}


.formulaire{
    width: 50%;
    height: 90%;
    display: flex;
    flex-direction: column;
    justify-content: center;

}

.content_form{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: 60%;
    
}

form{
    
    width: 80%;
}

.name{
    padding: 5px;
    display: flex;
    
}

.name input{
    margin: 5px;
    padding: 5px;
    width: 50%;
    height: 40px;
    border-radius: 15px;
    border: 2px solid var(--black_color);
    font-size: 15px;
}

.email{
    padding: 5px;
    display: flex;
    
}

.email input{
    margin: 5px;
    padding: 5px;
    width: 100%;
    height: 40px;
    border-radius: 15px;
    border: 2px solid var(--black_color);
    font-size: 15px;
}


.telephone{
    padding: 5px;
    display: flex;
    
}

.telephone input{
    margin: 5px;
    padding: 5px;
    width: 100%;
    height: 40px;
    border-radius: 15px;
    border: 2px solid var(--black_color);
    font-size: 15px;
}

.msg{
    padding: 5px;
    display: flex;
    
}

.msg textarea{
    margin: 5px;
    padding: 10px;
    width: 100%;
    height: 200px;
    border-radius: 15px;
    border: 2px solid var(--black_color);
    font-size: 15px;
    resize: none;
}

.send_btn{
    padding: 5px;
}

.send_btn button{
    border: 2px solid var(--black_color);
    width: 100%;
    height: 40px;
    background-color: var(--red_clear);
    border-radius: 15px;
    font-size: 20px;
}

.rs{
    margin-top: 150px;
    width: 100%;
    height: 40%;
}

.title_rs{
    padding: 10px;
    

}

.title_rs p{
    margin-left: 10px;
    font-size: 25px;
}

.list_rs ul{
    margin-left: 15px;
    margin-top: 10px;
    display: flex;
    align-items: center;
}

.list_rs ul li{
    
    margin-left: 5px;
    list-style: none;
}

svg{
    width: 55px;
    height: 55px;
}

footer {
    position: relative;
    padding: 10px;
    background-color: var(--red_clear);
    color: white;
    margin-top: 20px;
   
}
.copy{
    position: absolute;
    bottom: 0;
    
}
.copy p{
    font-size: 15px;
}
.liste_gen{
    display: flex;
    justify-content: center;
    
}
.liste_gen ul li{
    list-style-type: none;
}

.liste_nav ul li a.active{
    color: var(--yellow_clear);
}

/* responsive */

@media screen and (max-width:1700px) {
    .box-pad{
        height: 80px;
    }


}


@media screen and (max-width:1380px) {
    .liste_nav ul li{
        margin:5px ;
    } 

}



@media screen and (max-width:1260px) {
    .liste_nav ul li a{
        font-size: 1.563em;
    }

    .number_nav a{
        font-size: 1.563em;
    }

}

@media screen and (max-width:1280px) {
    .box-pad{
        height: 70px;
    }

}


@media screen and (max-width:1078px) {
    .liste_nav ul li a{
        font-size: 1.25em;
    }

    .number_nav a{
        font-size: 1.25em;
    }

}

@media screen and (max-width:1030px) {
    .titre_card h4{
        font-size: 25px;
    }

    .titre_card span{
        font-size: 15px;
    }

    .liste_prix ul li{

        font-size: 20px;
    }
    
    .liste_prix ul li , p{
       font-size: 20px;
        
    }

    .liste_description ul li{
        font-size: 20px;  
    }

    .liste_description p{
        
        font-size: 20px;
    }

    .liste_prix_two ul li{
      
        font-size: 20px;
    }
    
    .liste_prix_two p{
        
        font-size: 20px ;
    }

    .titre_card_two h4{
        font-size: 25px;
        
    }
    
    .titre_card_two span{
        font-size: 15px;
    }
    

}


@media screen and (max-width:959px) {
    .nav_bottom{
        position: fixed;
        transition: all ease 1s;
        justify-content: center;
        border-bottom: 2px solid var(--black_color);
    }
    .nav{
        top: -120px;

    }

    .nav.openmenu{
        top: 120px;
    }
    .bar-nav-responsive{
        display: flex;
        border-bottom: 2px solid var(--black_color);
        
    }

    .liste_nav{
        height: 100%;
        width: 100%;
    }

    .liste_nav ul li a{
        font-size: 25px;
    }

    .logo_nav{
        display: none;
    }

    .number_nav{
        display: none;
    }
    .info-acceuil{
        height: 100%;
    }
    .content_img{
        margin-top: 120px;
    }

    .content_background{
        align-items: center;
        
    }
    .acceuil_content{
        flex-direction: column-reverse;
    }
    .box_right{
        margin-top: 10px;
        padding-bottom: 10px;
        border-left: none;
        width: 90%;
        height: 50%;
        border-bottom: 1px solid black;
        
    }
.box_right p{
    font-size: calc(2.10vw + 1vh);
}
    .box_left{
        width: 80%;
        height: 50%;
        
    }

    .titre_charte{
        padding: 30px 50px;
    }

    .titre_charte h2{
        font-size: 5.1vw;
    }
    .titre_acceuil h1{
        font-size: calc(3.10vw + 1vh);
    }

    .content_charte{
        display: block;
    }
    .symbol_content{
        width: 14vw;
    }
    .symbol_content p{
        top: 10px;
        font-size: 5.3vw;
    }

    .box-pad{
        height: 80px;
    }
    .charte_name p{
        font-size: 3vw;
    }

    .acceuil{
        height: auto;
    }

    .image_presentation{
        height: 400px;
    }

   .titre_card h4{
    line-height: 22px;
   }
    .ponctuelle_case{
        flex-direction: column;
        align-items: center;
        
    }

    .ponctuelle_card{
        width: 90%;
        height: 100%;
        
        margin-bottom: 10px;
    }

    .ponctuelle_card_two{
        width: 90%;
        height: 50%;
    } 

   .simple{
    display: block;
    
   }
   .table-sepulture{
    width: 100%;
   }

   .content_contact{
    flex-direction: column-reverse;
   }
   .coordonee{
    width: 100%;
    height: 100%;
    
   }
   .formulaire{
    height: 100%;
    width: 100%;
   
   }
   .rs{
    display: none;
   }
   form{
    
    width: 100%;
}

}

@media screen and (max-width:815px) {

    .description_card_etoile ul{
        width: 100%;
        padding: 5px;
    }

    .description_card_etoile ul li{
        list-style: none;
        font-size: 10pxpx;
        
    }
}


@media screen and (max-width:780px) {
    .content_charte{
        padding: 50px 10px;
    }
    .description{
        font-size: 15px;
    }
}


@media screen and (max-width:580px) {
    .box-pad{
        height: 60px;
    }

    .symbol_content p{
        left: 10px;
    }

    .charte_name p{
        font-size: 3.6vw;
    }
}


@media screen and (max-width:566px) {
    .number_nav_responsive a{
        font-size: 25px;
    }

    .logo_nav_responsive img{
        width: 110px;
    }
    .titre_offre h3{
        font-size: 5vw;
    }
    .titre_offre_two h3{
        font-size: 5vw;
    }
}

@media screen and (max-width:480px) {
    
    .number_nav_responsive a{
        font-size: 20px;
    }

    .logo_nav_responsive img{
        width: 100px;
    }
    .nav_bottom{
        height: 200px;
        width: 100%;
    }

    .liste_nav{
        margin: 10px;
    }
    .liste_nav ul{
        text-align: center;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        
    }

    .liste_nav ul li{
        border-bottom: 1px solid gray;
        width: 100%;
        box-shadow: 1px 1px 5px black;
    }
    
   
        
}

@media screen and (max-width: 830px) {
    .background-info h1{
        font-size: 40px;
    }
}

@media screen and (max-width: 500px) {
    .background-info{
        margin-bottom: 100px;
    }
    .background-info h1{
        font-size: 30px;
    }

    .logo_acceuil img{
        margin-top: 100px;
    }
}



/* navbare responsive end */


 
/* height */

