/*
red:#e02434
black:#3c4550
*/
html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
    
   
}
body{
  /*  width: fit-content;*/
}
.mb-40{
    margin-bottom:40px;
}
.mt-20{
    margin-top:20px;
}
/* -------------------------header */
#social_top a i,#top_line,#top_line a {
    /* font-size: 18px !important; */
    /* margin-bottom: 0px !important; */
    /* margin-top: 2px !important; */
    /* padding-top: 5px; */
}

#social_top a i {
 padding:2px !important;
 font-size: 19px !important;
}
header, header.sticky{
    /*background-color: white;*/
    background-color: #ffffffe7 !important;
    box-shadow: 0 2px 5px -2px rgb(0 0 0 / 48%) !important;
    padding: 5px 0px 5px 0px !important;
}
#top_links li {
       /* margin-right: 20px !important; */
    margin-top: 25px !important;
    

}
/**************************************/
/*-------------------menu*/
.main-menu ul li a {
    padding: 9px !important;
    font-size: 17px !important;
}

.sticky nav {
    margin-top: 20px !important;
}

header.sticky #logo_home {
    margin: 10px 0 0 0 !important;
    padding: 0;
}
.cmn-toggle-switch {
        position: relative;
        display: block;
        overflow: visible;
        position: absolute;
        top: 8px !important;
        right: 8px !important;
        margin: 0;
        padding: 0;
        width: 30px;
        height: 30px;
        font-size: 0;
        text-indent: -9999px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        box-shadow: none;
        border: none;
        cursor: pointer
    }

.main-menu.opened {
    display: block;
    
    transition: transform 0.3s ease;
    transform: translateX(0);  
}
.close-menu {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 30px;
    color: #fff;
    cursor: pointer;
    z-index: 1000;  
}

@media only screen and (max-width: 720px){
.main-menu {
    width: 80% !important;
}
}
@media only screen and (max-width: 480px){
header {
        height: 70px !important;
}
header img {
    height: 40px !important;
    width: 40px !important;
    
}
}
/******************************************/

/*------------ button */
.button-demande {
    color: #fff !important;
    background-color: #e02434 !important;
    border-radius: 6px;
}
.btn-link{
     color: #e02434 !important;
     font-size: 17px !important;
   
}
/*************************************************/
/*login*/
#login {

    color: #fff !important;
    font-size:1.1em;
    background-color: #3c45508a !important;
}
.divider span {
   /* color: #3c4550;*/
    color: #e02434;
    font-style: normal !important;
    
}
#hero.login {

}
/*************************************************************/

/*-----------------------------------------slider*/
.cd-slider-nav {
    background-color: #3c45508a !important;
        height: 65px !important;
}
.cd-slider-nav .cd-marker {
    color: #e02434 !important;
}

.cd-slider-nav li.selected:first-of-type a::before,.cd-slider-nav li.selected:nth-of-type(2) a::before,.cd-slider-nav li.selected:nth-of-type(3) a::before,.cd-slider-nav li.selected:nth-of-type(4) a::before {
    color: #e02434 !important;
}
    .cd-slider-nav .cd-marker, .cd-slider-nav li {
        width: 120px !important;
    }
    
.cd-slider-nav li:nth-of-type(3) a::before {
    content: "\f0c2" !important;
}    
.titreSlider{
    height:75% !important;
    top:10% !important;
    bottom:5% !important;
    /*background-color:#3c455059 !important;*/
    background-color:#3c455030 !important;
    padding-top:10% !important;
    /*height:100% !important;*/
}
.titreSlider h3, .titreSlider h2, .titreSlider p{
    color:#fff !important;
    font-weight: 700 !important;
   /* text-shadow:
     -1px -1px 0 #000,  
      1px -1px 0 #000,
     -1px  1px 0 #000,
      1px  1px 0 #000 !important;*/
}
.sloganSlider1{
    

}
.cd-slider-nav nav {

    height: auto !important;
}
.cd-hero-slider .cd-btn {
  border-radius: 15px !important;
  padding: 10px 20px !important;
  background-color: #e02434 !important;
}
 .textSlider{
     font-size:20px !important;
 }
 
 @media only screen and (min-width: 768px) {
    .cd-slider-nav {
        height: 6em !important;
    }
}

@media only screen and (max-width: 480px) {
    html, body {
        width:100% !important;
        max-width:100% !important;
    overflow-x: hidden !important;
  }
    .cd-hero-slider .cd-full-width, .cd-hero-slider .cd-half-width {
        padding-top: 15% !important;
    }
    .titreSlider {
    height:100% !important;
    top:0% !important;
    bottom:0% !important;
    }
   .textSlider{
        font-size:15px !important;
 }
}

@media only screen and (min-width: 768px){
.cd-hero-slider .cd-full-width, .cd-hero-slider .cd-half-width {
    /* padding-top: 12%; */
/*    margin-top: 10% !important;
*/}
}
/****************************************************************/
.cd-main-content {
    width:100% !important;
    max-width: fit-content !important;
    padding:0px !important;

}

/*------- sections*/
.presentation{
    /*width:95% !important;*/
    /*padding-bottom:2em;*/
}
.presentation_text p, .presentation_text h3{
    padding-left:15px !important;
}
.img-presentation{
    width:97% !important;
    height:75% !important;
    margin:auto;
}
.fonctionalites{
    padding-bottom:2em;
}
.presentation h1, .fonctionalites h1 {

    color: #e02434 !important;
}
.presentation2, .presentation3 {
    width:100% !important;


}
.presentation3 h1 {
    /*text-align: left !important;*/
 /*       width: 90%;
    margin: auto;
    padding: auto;
    color: #3c4550 !important;*/
    /*color: #e02434 !important;*/
/*    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.2); /* Fluid shadow from bottom 
*/    

}

.presentation3 {
    /*margin-bottom:5%;*/
 
    /*box-shadow: 0px 10px 10px rgba(0, 0, 0, 0.1); */

}
/*******************************************/


/* ----------------------------------faq*/
.faqTitle{

     color: #e02434 !important;
    font-size: 3em !important;
}
.faqHr{
      border: none;
  height: 2px;
  background-color: #3c4550;
}
.icon-container {
  text-align: center; /* Centre l'icône horizontalement */
  margin: 20px 0;
}

.icon-container i {
  font-size: 10vw; /* Taille responsive selon la largeur de l’écran */
  color: #3c4550;   /* Facultatif : couleur personnalisée */
}
#faqAccordion {
    width: 95%;
    margin: auto;
    height: 580px;

    overflow-y: visible;
}

.faq-accordion .card-header.show {
    border: 0px !important;
}

.faq {
    background-color: #3c4550e6;
}
.card {
    margin-bottom: 10px;
    border: none;
    background-color: #f8f9fa;
}

.card .card-header {
    /*background-color: #e9ecef;*/
    background-color: #3c4550;
    cursor: pointer;
    padding: 1rem;
}
.card .btn-link {
    text-decoration: none;
    font-weight: bold;
    color: #fff !important;
    font-size:16px !important;
    width: 100%;
    text-align: left;
}
.card .collapse {
    max-height: 200px; /* Limite la hauteur affichée */
    overflow-y: auto; /* Active le scroll interne si le contenu dépasse */
    /*transition: max-height 0.3s ease-in-out;*/
}

.card .collapse.show {
    display: block;
}

.card-body {
    padding: 1rem;
    background-color: white;
    color: #212529;
}
.card .collapse::-webkit-scrollbar {
    width: 6px;
}

.card .collapse::-webkit-scrollbar-thumb {
    background-color: #6c757d;
    border-radius: 10px;
}

@media (max-width: 412px) {
  #faqAccordion {
    height:fit-content;  
    max-height:fit-content;  
    padding: 0 10px;
  }
  .card .collapse{
    height: 180px; /* Limite la hauteur affichée */
    overflow-y: auto; /* Active le scroll interne si le contenu dépasse */
    /*transition: max-height 0s ease-in-out;*/
  }
}
/************************************************************/

/* -------------------------------section solution */
.solution{
    background-color:#e02434;
    /*background-color:#e02434d9;*/
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.2); /* Fluid shadow from bottom */
}
.solution h1{
    color:white !important;
}
.solution h5, .solution h3{
    color:#e02434 !important;
    text-decoration:none !important;
    padding-bottom:2%;
    z-index:100;
}
.colonneAction {
  background: white !important;
  border-top: 1px solid #3c455000 !important;
  border-right: 1px solid #3c455000 !important;
  border-left: 1px solid #3c455000 !important;
  padding: 5px 20px 20px 20px !important;
  margin: 20px 20px 0px 20px !important;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  width: 150px;
  transition: box-shadow 0.3s ease-in-out;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
  position: relative; /* Ensure the z-index works on child elements */
}

.colonneAction:hover {
  box-shadow: 0px 12px 20px rgba(0, 0, 0, 0.3);
}

/* Button inside colonneAction */
.btn_action {
  position: relative;
  display:block !important;
  background-color: #e02434 !important;
  text-align:center !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  border-radius: 15px;
  padding: 10px 20px !important;
  width: 80% !important;
  margin:auto;
  /*background-color: #3498db;*/
  color: white !important;
  cursor: pointer;
  transition: all 0.3s ease;

}

/* Hover effect on the button */
.colonneAction:hover .btn_action
/*,.btn_1:hover */
{
  transform: scale(1.1); /* Grow the button */
  z-index: 2; /* Bring the button in front */
}


.description_solution {
    min-height: 275px;
}
/***********************************************************************/

/* ------------------scroll--------------------*/ 
   /* Initial state: hide elements */
    /*.scroll-element {*/
    /*  opacity: 0;*/
    /*  transform: translateH(50px);*/
    /*  transition: opacity 0.6s ease, transform 0.6s ease;*/
      
    /*}*/

    /* Fade-in effect */
    /*@keyframes fade {*/
    /*  0% { opacity: 0; transform: translateY(50px); }*/
    /*  100% { opacity: 1; transform: translateY(0); }*/
    /*}*/

    /* When element comes into view */
    /*.scroll-element.visible {*/
    /*  opacity: 1;*/
    /*  animation: fade 1s ease-in;*/
    /*}*/
/* ------------------end scroll--------------------*/ 
/* Initial state: hide elements */
.scroll-element {
  opacity: 0;
  transition: opacity 0.6s ease, transform 0.6s ease;
}

/* --- Effet bas vers haut (déjà existant) --- */
.scroll-element.fade-up {
  transform: translateY(50px);
}

@keyframes fade-up {
  0% { opacity: 0; transform: translateY(50px); }
  100% { opacity: 1; transform: translateY(0); }
}

.scroll-element.fade-up.visible {
  opacity: 1;
  animation: fade-up 1s ease-in forwards;
}

/* --- Effet droite vers gauche --- */
.scroll-element.from-right {
  transform: translateX(100px);
}

@keyframes fade-right {
  0% { opacity: 0; transform: translateX(100px); }
  100% { opacity: 1; transform: translateX(0); }
}

.scroll-element.from-right.visible {
  opacity: 1;
  animation: fade-right 1s ease-in forwards;
}

/* --- Effet gauche vers droite --- */
.scroll-element.from-left {
  transform: translateX(-100px);
}

@keyframes fade-left {
  0% { opacity: 0; transform: translateX(-100px); }
  100% { opacity: 1; transform: translateX(0); }
}

.scroll-element.from-left.visible {
  opacity: 1;
  animation: fade-left 1s ease-in forwards;
}


/* -----------------------comparaison fonctionalitées */

    .comparison-table th {
      background-color: #e02434;
      color: white;
      text-align: center;
      font-weight:bold;
      font-size:1.2em;
    }
    .comparison-table td {
      text-align: center;
      vertical-align: middle;
    }
    .comparison-table td span {
      font-weight: bold;
    }
    
/*********************************************************/    
/*--------------------- nos clients*/
  .nosClient{  
    background-color: #0000000f;
    /*background-color: #3c455014;*/
    margin-top: 2em;
  }
  
 /************************************************/
 /************************** scroll fonctionalities*/

 /**************************************************/
 
 /*---------------------- modal */
 .modal-title {
    margin: auto !important;
    
}
.modal-header .close {
    font-size: 1.5em;
    color: #e02434;
}
/*********************************************/
/*------------------------titreScrennShoots------*/
.titreScrennShoots, .titreConnectivite{
    width: 100%;
    margin: 0;
    background-color:#3c4550;
    /*background-color:#0000000f;*/
    border-radius: 12px 12px 0px 0px;
    line-height: 0.2em;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
    /*box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);*/
}
.titreScrennShoots h1 , .titreConnectivite h1{
    padding-top:1%;
    z-index:1000;
    /*color:#3c4550 !important;*/
    color:#fff !important;
}
.titreScrennShoots h3{
    padding-bottom:1%;
    z-index:500;
    /*color:#fff !important;*/
}
/*------------------------------*/



