/* ✅ CORRIGÉ */
@layer header, container, TravelD, filtre-trip, card, row, badge, accordion, bootstrap;

@import url('./all.min.css');
@import "./root.css";
@import "./aos.css";

/* ✅ Bootstrap importé UNE SEULE FOIS */
@import url("./bootstrap.min.css") layer(bootstrap);

@import "./header-site.css";
@import "./footer-site.css";

@import url('./swiper-bundle.min.css');


@import url('./hotels-travel.css');
@import url('./filtre-travel.css');
@import url('./media-hover.css');





h1,
h2,
h3,
h4,
h5,
h6 {


  line-height: initial;


}



.fa.fa-phone-alt,
.fa.fa-map-marker,
.recap-map i,
.typeahead__item a i,
.property-address i,
h4.property-location .fa,
.fa-home,
.typeahead__container.destination .input-icon:before,
.input-icon:before {
  color: var(--color-site-1) !important;
  font-size: 16px !important;
}



.TravelD .badge {
width: fit-content;
gap:2px;
display: flex;
text-align: start;
white-space: pre-wrap;
}


.label-success {

background-color: #2EA821;

}

.label-success-v2 {

background-color: #D5F7D2 !important;
border: 1px solid #D5F7D2;
color: #2EA821;
}



.margtop15 {
  top: 0 !important;
}

.search.display-grid-mobile {
  border: 1px solid #cccccc;
}







.advanced-search-mobile {
  background-color: var(--primary-color);
  margin: 0;
}

.advanced-search-mobile .single-search-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}












.btn-modal-filtrer {

 border: 1px solid #c7dbeb;
  border-radius: 4px;
  padding: 10px 20px;
 
 
  color: #000000;

  
font-weight: 600;

font-size: 16px;


}




.modal-content.rounded h3.widget-title {
font-weight: 500;

font-size: 16px;
color:#000000
}

#sidebar .checkbox label {
color: #000000;
}







/**form-filtre**/

.input-date::before {
  content: "\f073";
}

.input-nuitee:before {
  content: "\f186";
}

.empty-page .jumbotron {
  text-align: center;
  margin:0;
}

.empty-page .jumbotron p {
  color: var(--color-black);
  font-weight: 400;
}
.empty-page .jumbotron {
    margin: 0 !important;
  }
@media (max-width: 991.99px) {
  .empty-page .jumbotron {
    margin: 0 !important;
  }
}

.breadcrumb-top {
  padding: 20px 0 10px;
}

.breadcrumb li::after {
  content: "|";
}

.breadcrumb li:last-child {
  font-weight: 600;
}




.input-icon+.input-icon {
  border-top: 1px solid transparent;
}


/* Custom CSS to replicate the image styling */
.price-container {
  display: flex;
  /* Use a high border-radius to create the rounded corners */
  border-radius: 10px;
  overflow: hidden;
  /* Ensures the contents respect the border-radius */
  max-width: 350px;
  /* Adjust as needed */
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.price-box {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  text-align: center;
  font-family: Arial, sans-serif;
  /* A bold, simple font like in the image */
}

/* --- Left Side (5514 TND/pers) --- */
.gradient-bg {
  flex-grow: 2;
  /* Make the left side wider */
  color: white;
  /* Creating the pink/red gradient from the image */
  background: linear-gradient(to right, var(--color-site-2), var(--color-site-1));
}

.price-value {
  font-size: 26px;
  /* Large size for the main number */
  font-weight: 800;
  /* Extra bold */
  line-height: 1;
 
}

.price-details {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding-top: 5px;
  /* Adjust vertical alignment */
}

.currency,
.per-person {
  font-size: 1.1rem;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
}

/* --- Right Side (8X) --- */
.multiplier-box {
  flex-grow: 1;
  /* Make the right side narrower */
  background-color: white;
  color: var(--color-site-1);/
}

.multiplier-value {
  font-size: 3.5rem;
  /* Same large size as the price value */
  font-weight: 800;
  line-height: 1;
}

.price-omra {

  font-weight: 700;

  font-size: 24px;

  line-height: 18px;


  color: #000000
}

#product .description p {

  font-weight: 500;

  font-size: 16px;


  text-align: justify;
  vertical-align: middle;
  color: #000;
  max-height:150px;
  overflow:hidden
}
#product .description p:hover{
  overflow-y: auto; 
}
.font-weight-600 {
  font-weight: 600;
}

.property-product {


font-weight: 600;
  font-size: 16px;
  color: #000000;




}


.voyage-product .price h3 {

  color: #000000;
font-weight: 700;
font-size: 30px;
}


.price-widget-card {
  font-weight: 700;
  font-size: 22px;
  color: #000000;

}
.dropdown-toggle::after {
  content: none;
}

.text-gray-color{
  color:#626568 !important
}


/* 1. Si le body a la classe de blocage mais AUCUNE modale affichée, on libère le scroll */
#body-book.modal-open:not(:has(.modal.show, .modal.in, .modal[style*="display: block"])) {
    overflow: auto !important;
    padding-right: 0 !important;
}

/* 2. Si aucune modale n'est active, on fait disparaître de force le fond sombre */
#body-book:not(:has(.modal.show, .modal.in, .modal[style*="display: block"])) .modal-backdrop {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* 3. Sécurité : permet de cliquer "à travers" la couche si elle reste par erreur */
.modal-backdrop {
    z-index: 1040; /* Valeur standard Bootstrap */
}
.TravelD .price-start-hotel{
  text-align: end;
  font-size: 12px;
}
.TravelD .price .rant,
.TravelD .price .price-start {
  font-size: 12px;
  color: #626568;

  font-weight: 500;

text-align: start;


}
.pagination-main .pagination li.active a {

background-color: var(--color-site-1);
}

.price{
  text-align: start ;
}


#omra-carte .remove-btn {
width: auto;
}

.icon-trash:before {
    content: "\f1f8";
    color: red;
}

.sort-tab .bootstrap-select .btn.btn-default {

color: var(--color-site-1);
}


  .icon-wrap {
      width: 35px;
      height: 35px;
      background: #fff1ee;
      border-radius: var(--border-radius);
      display: flex;
      align-items: center;
      justify-content: center;
      
    }


.property-location .fa{
color:#000 !important
}

    #sidebar-mobile .modal-body {
        overflow-y: auto;
        overflow-x: hidden;
        max-height: 78vh;
        width: 100%;
        padding: 25px;
    }


.panel.panel-success .btn-primary {
  color: #fff;
  background-color: var(--color-site-1);
  border-color: var(--color-site-1);
}

.panel.panel-success  .fa.fa-check-circle{
 color: #2EA821 !important; 
}
.panel.panel-success i.fa{
  color:var(--color-site-1);
  margin-right:10px
}

.panel.panel-success strong, .panel.panel-success  b {
  color:#000
}

.panel.panel-success .list-group-item-heading{
color:var(--color-site-1);
font-weight: 600;

}
strong, b {

font-weight: 800;
}
#form-omra .btn-long {
font-weight: 600;

font-size: 16px;


letter-spacing: 3%;

}

#form-omra .info-title .info-title-left {

font-weight: 700;

font-size: 22px;

margin:20px 0

}


 /*omra et transfert filtre */



.info-title-left {
  font-size: 30px ;
  font-weight: 700;
  color: var(--color-black);
  position: relative;
  padding-bottom: 4px;
  margin-bottom: 12px !important;
}

.info-title-left::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 24px;
  height: 5px;
  background-color: var(--color-site-1);
  border-radius: var(--border-radius);
}

.membership-content {
  border: none;
}

#form-omra .form-group label {
  font-weight: 600;
  color: var(--color-black);
margin-bottom: 10px;
  font-size: 14px;
}

/* Ciblage direct par l'ID pour garantir la priorité */
#form-omra select {
    display: block;
    width: 100%;
   
   
   
    font-weight: 400;
  
    color: #495057;
    background-color: #fff;
    
    /* Suppression de l'apparence par défaut (flèche navigateur) */
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    /* Bordure et arrondi selon votre image */
    border: 1px solid #ced4da;
    border-radius: 4px; 

    /* Ajout de l'icône Chevron personnalisée */
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 1.2em;
    
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

/* État Focus pour garder l'aspect moderne */
#form-omra select:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

/* Ajustement pour IE (si nécessaire) */
#form-omra select::-ms-expand {
    display: none;
}
#form-omra .form-control,#form-omra .post-password-form input[type='password'] {

  border-radius: 4px;
  border: 1px solid #C7DBEB;

}
#form-omra #form_date_depart.form-control {
    /* Mise en forme du champ */
    border: 2px solid #d1e3f0;    /* Couleur de bordure bleu clair */
    border-radius: 8px;           /* Coins arrondis */
    padding: 10px 15px;           /* Espacement interne */
    outline: none;
    width: 100%;
    font-family: sans-serif;
    color: #333;
    
    /* Ajout de l'icône orange à droite */
    appearance: none; 
    -webkit-appearance: none;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="%23FF5722" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line><rect x="7" y="14" width="3" height="3" fill="%23FF5722"></rect></svg>');
    background-repeat: no-repeat;
    background-position: right 15px center;
    background-size: 24px;
}

/* Supprime l'icône de calendrier par défaut sur Chrome/Edge/Safari */
#form-omra #form_date_depart.form-control::-webkit-calendar-picker-indicator {
    cursor: pointer;
    opacity: 0; /* On la rend invisible mais cliquable au-dessus de notre icône orange */
    position: absolute;
    right: 10px;
    width: 30px;
    height: 30px;
}



#type-tranfert .section-tab .nav-tabs {
  border-bottom: none;
  padding: 10px 0;
}




#type-tranfert .nav-tabs>li {
  border: none;
}

#type-tranfert .nav-tabs .nav-link a  {
  display: flex;
  align-items: center;
  text-decoration: none;
  border: none;
  padding-left: 0;
  color: #000;
  font-weight: 400;

}
#type-tranfert  .nav>li>a:focus, .nav>li>a:hover {
  background-color: transparent;
}


#type-tranfert .nav-tabs .nav-link a::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 10px;
  border: 2px solid #ccc;
  border-radius: 50%;
  background-color: #fff;
  transition: all 0.2s ease-in-out;
  box-sizing: border-box;
}


#type-tranfert .nav-tabs .nav-link.active a::before {
  border-color: #0576F0;
  background-color: #0576F0;

  box-shadow: inset 0 0 0 3px #fff;
}


#type-tranfert .nav-tabs .nav-link:hover a::before {
  border-color: #0576F0 ;
}



@media (min-width: 768px) {
  #form_HeureDepart.form-inline .form-control, #form_HeureDepartRetour.form-inline .form-control {
    width: 49%;
  }
}


hr.border-bottom{
 border:1px  solid  #C7DBEB !important
}

.bootstrap-select .btn.btn-default {

color: var(--bs-secondary-color);
}

.jconfirm-box-container h3{
font-weight: 600 !important; 
  color: #000 !important;
}

.jconfirm .jconfirm-box.jconfirm-type-dark {

border-top: solid 8px var(--color-site-1) !important;
}