
    
    .responsive-height {
  height: 15vw; /* par défaut (desktop) */
}

@media (max-width: 600px) {
  .responsive-height {
    height: 30vw; /* sur mobile (largeur < 600px) */
  }
}
    
    
    
    
    
/* ============================
   CONTENEUR PRINCIPAL
============================ */
.main-panel {
  max-width: 400px;
  margin: 100px auto;
  text-align: center;
}

/* ============================
   BOUTONS : btn-home-org
============================ */
button.btn-home-org {
 
  background-color: transparent !important;
  color: black !important;
  font-weight: bold;
  font-size: 19px;
  border: none;
  transition: all 0.3s ease;
}

button.btn-home-org:hover {
  color: #ff4500 !important;

}

button.btn-home-org:focus {
  box-shadow: none !important;
  outline: none !important;
}

button.btn-home-org:active {
  color: #ff4500 !important;

}



/* Réduction de la taille du texte sur téléphone */
@media (max-width: 600px) {
  .btn-home-org {
     font-size: 10px !important;
 
  }
}





/* ============================
   BOUTONS : btn-alt
============================ */
.btn-alt {
 
  color: black;
  font-weight: bold;
  font-size: 19px;
  
  
  border: none;
  border-radius: 0px;
  transition: all 0.3s ease;
}

.btn-alt:hover {
  color: #ff4500;
  background-color: transparent; 
}

/* Réduction de la taille du texte sur téléphone */
@media (max-width: 600px) {
  .btn-alt {
     font-size: 10px !important;

  }
}







@media (max-width: 600px) {
  .btn-2lines {
    white-space: normal; /* autorise le retour à la ligne */
    width: 60px; /* ajuste largeur pour contrôler le wrapping */
    text-align: left;
   
  }
}





/* ============================
   BOUTONS : btn-filter
============================ */
button.btn-filter {
 
  background-color: transparent !important;
  color: black !important;
  font-weight: bold;
  font-size: 19px;
  border: none;
  transition: all 0.3s ease;
}

button.btn-filter:hover {
  color: #ff4500 !important;
  
}

button.btn-filter:focus {
  box-shadow: none !important;
  outline: none !important;
}

button.btn-filter:active {
  color: #ff4500 !important;
 
}



/* Réduction de la taille du texte sur téléphone */
@media (max-width: 600px) {
  .btn-filter {
     font-size: 20px !important;
 
  }
}









/* ============================
   BOUTON : btn-new-event
============================ */
.btn-new-event {
  color: #0056b3;
  font-weight: bold;
  font-size: 20px;
  padding: 10px 20px;
  border: none;
  border-radius: 30px;
  transition: background-color 0.3s ease, transform 0.2s ease;
}

.btn-new-event:hover {
  background-color: #0056b3;
  color: white;
  transform: scale(1.03);
}

@media screen and (max-width: 600px) {
  .btn-new-event {
    font-size: 10px;
    padding: 8px 16px;
  }
}



/* ============================
   CAROUSEL : IMG
============================ */
.carousel-img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
 
  margin: 0 auto;
}


/* ============================
   CAROUSEL : IMG BGE
============================ */

      .bge-slide img.carousel-img-bge {
  max-width: 50%;
  max-height: 50%;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
 
  margin: 0 auto;
}



/* ============================
   CAROUSEL : SLIDE STYLE
============================ */
.carousel-slide {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
   
  margin: 10px 2px; /* haut/bas = 8px, gauche/droite = 12px */

}

@media (max-width: 600px) {
  .carousel-slide {
  border-radius: 5px;
    margin: 2px 0px;
  }
}



.carousel-slide:hover {
  transform: scale(1.05); /* Zoom à 105 % */
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}


@media (max-width: 600px) {
  .carousel-slide:hover {
transform: scale(1.02); /* Zoom à 102 % */
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
}




.slick-dots {
  display: none !important;
}






/* ============================
   CAROUSEL : PUB SLIDE STYLE
============================ */
.carousel-slide-pub {
  display: flex;
  
  flex-direction: column;
  align-items: center;
  background: #fff;
  border-radius: 16px;
    margin: 10px 2px; /* haut/bas = 8px, gauche/droite = 12px */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.carousel-slide-pub:hover {
  transform: scale(1.05); /* Zoom à 105 % */

  transition: transform 0.3s ease, box-shadow 0.3s ease;
}




@media (max-width: 600px) {
  .carousel-slide-pub {
  border-radius: 5px;
    margin: 2px 0px;
  }
}








/* ============================
   CAROUSEL : TEXT STYLES
============================ */
.carousel-title {
  font-family: 'Arial', sans-serif;
  font-size: 1.5rem;
  font-weight: 600;
  color: #222;
  text-align: center;
  margin: 1.3rem 0;
  line-height: 1.2;
}

.carousel-desc {
  font-size: 1.4rem;
  color: #555;
  text-align: center;
}

.carousel-location {
  font-size: 1em;
  color: #222;
  text-align: center;
}

.carousel-price {
  font-size: 1.2rem;
  font-weight: 600;
  color: #222;
  text-align: center;
}

.carousel-dates {
  font-size: 0.9em;
  color: #555;
  text-align: center;
}

@media (max-width: 600px) {
  .carousel-title {
    margin-top: 0.5rem;
    font-size: 1em;
  }

  .carousel-desc {
    margin-top: 0.1rem;
    font-size: 0.85em;
  }
}

/* ============================
   CAROUSEL : SLIDE ESPACEMENT
============================ */
.slick-slide {
  padding: 0 8px;
  box-sizing: border-box;
}

.slick-list {
  margin: 0 -8px;
}









.entrepreneurs-text {
  font-size: 3.5vw;
  font-weight: bold;
  color: white;
}

.reseauter-text {
  font-size: 3.5vw;
  font-weight: bold;
  color: #FFEAB5;
}


.petit-text{
  font-size: 1.5vw;
  
  color: #FFEAB5;
}



.responsive-btn {
  font-size: 1.2vw;
  padding: 0.8vw 1.6vw;
  border-radius: 0.6vw;
   background-color: white;
  color: #ff5500;
  border: 2px solid #ff5500;
  transition: background 0.2s, color 0.2s;
}





@media (max-width: 700px) {
  .entrepreneurs-text {
    font-size: 7vw;
  }
  .reseauter-text {
    font-size: 7vw;
  }
  
    .petit-text {
    font-size: 3vw;
  }
  

    .responsive-btn {
    font-size: 3.5vw;       /* texte plus gros */
    padding: 2vw 4vw;     /* padding adapté */
    border-radius: 1vw;   /* arrondis plus visibles */
  }
  
  
}








.no-margin-wrapper .shiny-input-container {
 
  margin-bottom: 0px !important;
  padding-bottom: 0px !important;
}


@media (max-width: 600px) {
  .no-margin-wrapper .shiny-input-container input {
  padding: 0px 4px !important;  
    font-size: 12px !important;  /* ou la taille que tu souhaites */
  }
}









/* Style responsive pour le panneau de filtres */
.filter-panel * {
  font-size: 1.2vw;  /* s’adapte à la largeur de l’écran */
}


  .filter-panel {
    width: 30vw;
  }



@media (max-width: 600px) {
  .filter-panel {
    width: 70vw;
      margin-top: 6px; /* déplace le panneau plus bas */
  }

  .filter-panel * {
    font-size: 2.5vw;
  }
}






.irs-bar, .irs-bar-edge, .irs-single {
      background-color: #ff4500 !important;
      border-color: #ff4500 !important;
    }
    .irs-from, .irs-to, .irs-single {
      background: #ff4500 !important;
      color: white !important;
    }
    .irs-slider {
      background-color: #ff4500 !important;
      border: 1px solid #ff4500 !important;
    }




 input[type='text']:focus {
 
      outline: none !important;
      box-shadow: none !important;
 border-color: #ff4500 !important; 



#rich_map {
  width: 100%;
  height: 400px !important; /* Hauteur fixe mobile */
}

#rich_map .leaflet-container {
  height: 100% !important;
}

@media (min-width: 601px) {
  #rich_map {
    height: 1000px !important; /* Hauteur fixe desktop */
  }
}










