/* ============================================================
   RENDEZ-VOUS IMMO — CSS FICHE PROPRIETE (single property)
   ============================================================
   Charge UNIQUEMENT sur les URLs ?P_RefId (fiches Wiidoo), via
   functions.php (rvi_enqueue_wiidoo_single_css).

   Ce fichier regroupe TOUT l'habillage specifique aux fiches,
   extrait du CSS global (Customizer) pour ne plus alourdir le
   critical path des autres pages (home, listings, pages).

   Charte : bleu fonce #0d2f4a / bleu clair #2e8bd6 / orange #e0742f.
   Variables heritees du Customizer global (:root) -> pas besoin de
   les redeclarer, mais on met un fallback dans chaque var() au cas
   ou ce fichier serait teste isolement.

   Commentaires ASCII-only (contrainte projet).
   ============================================================ */

/* ------------------------------------------------------------
   HEADER : bandeau Costa del Sol (fiche uniquement)
   Le fichier ne se chargeant que sur ?P_RefId, on cible
   directement .rh_header sans prefixe page-id/property-details.
   ------------------------------------------------------------ */
.rh_header {
  background-image:
    linear-gradient(rgba(0,0,0,.50), rgba(0,0,0,.30)),
    url('./header-bg.jpg') !important;
  background-size: cover !important;
  background-position: center 35% !important;
  background-repeat: no-repeat !important;
}

/* ------------------------------------------------------------
   TITRE + espace sous le bandeau
   ------------------------------------------------------------ */
.sglprop1 { margin-top: 40px !important; padding-top: 10px !important; }

.sglproptitle {
  line-height: 1.2 !important;
  font-weight: 700 !important;
  color: var(--rdv-ink, #2a2a2a) !important;
}
/* Variante du Customizer : titre + prix sur la fiche (carousel single) */
.sglproptitle, .sglpropprice { margin-bottom: 0 !important; font-size: 29px !important; }

/* ------------------------------------------------------------
   BOUTON "Back to results" : bleu clair (secondaire)
   ------------------------------------------------------------ */
.sglprop1 .rs-right-align .rs-button,
.sglprop1 button.uk-button-primary {
  background: var(--rvi-bleu-clair, #2e8bd6) !important;
  background-color: var(--rvi-bleu-clair, #2e8bd6) !important;
  color: #fff !important;
  border: 1px solid var(--rvi-bleu-clair, #2e8bd6) !important;
  border-radius: 4px !important;
  padding: 12px 26px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  cursor: pointer !important;
  transition: all .2s ease !important;
}
.sglprop1 .rs-right-align .rs-button:hover,
.sglprop1 button.uk-button-primary:hover {
  background: var(--rvi-bleu-h, #1f74b8) !important;
  background-color: var(--rvi-bleu-h, #1f74b8) !important;
  border-color: var(--rvi-bleu-h, #1f74b8) !important;
  color: #fff !important;
}

/* ------------------------------------------------------------
   GALERIE : miniatures + image principale (single)
   ------------------------------------------------------------ */
.swiper111 { height: 144px !important; box-sizing: border-box !important; padding: 10px 0 !important; }
.swiper111 .swiper-slide { width: 25% !important; height: 144px !important; opacity: 0.4 !important; }
.swipermain { overflow: hidden !important; }
.swiper-scrollbar { position: relative !important; width: 100% !important; }
.swiper-button-next2 { height: 0 !important; }
.swiper111 .swiper-slide-thumb-active { opacity: 1 !important; }
.gall-image { height: 144px !important; }
.swiper-button-prev1, .swiper-button-next1 { background: black !important; }

/* Coins arrondis galerie + etat actif bleu clair */
.swiper3, .singimg { border-radius: var(--rdv-radius, 6px) !important; overflow: hidden !important; }
.swiper111 .swiper-slide-thumb-active { outline: 2px solid var(--rvi-bleu-clair, #2e8bd6) !important; outline-offset: -2px !important; }

/* Dimensions galerie principale (single) */
.singimg { height: 555px !important; }
.swiper3 { width: 100% !important; height: 555px !important; }
.swiper99 { height: 80%; width: 100%; overflow: hidden !important; }

/* Respiration sous la galerie */
.sglprop1 .swiper3,
.sglprop1 .singimg { margin-bottom: 24px !important; }

#map { margin-top: 21px !important; }

/* ------------------------------------------------------------
   TABLEAU CARACTERISTIQUES (Prix / Chambres / Salles de bain)
   ------------------------------------------------------------ */
.sglprop1 .rs-col.s12.m12.l4 {
  background: #fff !important;
  border: 1px solid var(--rdv-line, #e2e2e2) !important;
  border-radius: var(--rdv-radius, 6px) !important;
  box-shadow: var(--rdv-shadow, 0 1px 3px rgba(0,0,0,.05), 0 6px 18px rgba(0,0,0,.04)) !important;
  overflow: hidden !important;
  padding: 6px 0 !important;
}
.sglprop1 .rs-col.s12.m12.l4 > .rs-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 11px 14px !important;
  border-bottom: 1px solid var(--rdv-line, #e2e2e2) !important;
  margin: 0 !important;
}
.sglprop1 .rs-col.s12.m12.l4 > .rs-row:last-child { border-bottom: 0 !important; }
.sglprop1 .rs-col.s12.m12.l4 .rs-col.s6 > b { color: var(--rdv-ink, #2a2a2a) !important; font-size: 15px !important; font-weight: 700 !important; }
.sglprop1 .rs-col.s12.m12.l4 > .rs-row:first-of-type .rs-col.s6 > b { color: var(--rvi-bleu-clair, #2e8bd6) !important; font-size: 22px !important; }

/* proptitlecard (single) */
.proptitlecard { height: 50px !important; display: flex; justify-content: center; align-items: center; }

/* Bloc description / caracteristiques (rs-desc single) */
.rs-desc { border: 1px #f0f2f5 solid !important; padding: 21px !important; margin-top: 21px !important; }
.rs-desc > .rs-row > .rs-col > b {
  font-size: 13px !important;
  line-height: 15px !important;
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  padding-bottom: 8px !important;
}
.rs-desc > .rs-row > .rs-col { line-height: 15px !important; display: block !important; }
.rs-status { font-size: 13px !important; color: lightgrey !important; }
.wiidooform { margin-top: 21px !important; }

/* ------------------------------------------------------------
   FORMULAIRE "Ask about this Property"
   ------------------------------------------------------------ */
.rs-form {
  background: #fff !important;
  border: 1px solid var(--rdv-line, #e2e2e2) !important;
  border-radius: var(--rdv-radius, 6px) !important;
  box-shadow: var(--rdv-shadow, 0 1px 3px rgba(0,0,0,.05), 0 6px 18px rgba(0,0,0,.04)) !important;
  padding: 28px 26px !important;
}
.rs-form h4 { font-size: 22px !important; font-weight: 700 !important; color: var(--rdv-ink, #2a2a2a) !important; margin-bottom: 8px !important; }
#fname, #lname, #cemail, #ctel, #cref, #cmessage {
  background: #fff !important;
  border: 1px solid #d8d8d8 !important;
  border-radius: 4px !important;
  padding: 12px 14px !important;
  font-size: 14px !important;
  width: 100% !important;
}
/* Variante du Customizer (hauteur compacte sur certains champs) */
#fname, #lname, #cemail, #ctel, #cref { margin-bottom: 8px !important; }
/* Focus : bleu clair */
#fname:focus, #lname:focus, #cemail:focus, #ctel:focus, #cref:focus, #cmessage:focus {
  border-color: var(--rvi-bleu-clair, #2e8bd6) !important;
  box-shadow: 0 0 0 3px rgba(46,139,214,.15) !important;
  outline: none !important;
}

/* Bouton "Send information" : accent orange unique */
#wiisendbutt,
body #wiisendbutt.rs-white.rs-button {
  background: var(--rvi-orange, #e0742f) !important;
  background-color: var(--rvi-orange, #e0742f) !important;
  background-image: none !important;
  color: #fff !important;
  border: 1px solid var(--rvi-orange, #e0742f) !important;
  border-radius: 4px !important;
  padding: 12px 26px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  width: 100% !important;
  cursor: pointer !important;
  transition: all .2s ease !important;
}
#wiisendbutt:hover,
body #wiisendbutt.rs-white.rs-button:hover {
  background: var(--rvi-orange-h, #c9621f) !important;
  background-color: var(--rvi-orange-h, #c9621f) !important;
  border-color: var(--rvi-orange-h, #c9621f) !important;
  color: #fff !important;
}

/* ------------------------------------------------------------
   BLOC CARACTERISTIQUES DU BAS -> PASTILLES (cartes)
   ------------------------------------------------------------ */
.fs-feats { padding-left: 24px !important; padding-right: 24px !important; }

.rs-container.fs-feats .rs-section.rs-desc {
  border: 1px solid var(--rdv-line, #e2e2e2) !important;
  border-radius: var(--rdv-radius, 6px) !important;
  padding: 24px !important;
  box-shadow: var(--rdv-shadow, 0 1px 3px rgba(0,0,0,.05), 0 6px 18px rgba(0,0,0,.04)) !important;
  background: #fff !important;
}
.rs-container.fs-feats .rs-section.rs-desc > .rs-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  margin: 0 !important;
}
.rs-container.fs-feats .rs-section.rs-desc > .rs-row > .rs-col {
  display: block !important;
  flex: 1 1 calc(25% - 14px) !important;
  width: auto !important;
  min-width: 170px !important;
  background: #fff !important;
  border: 1px solid var(--rdv-line, #e2e2e2) !important;
  border-left: 3px solid var(--rvi-bleu-clair, #2e8bd6) !important;
  border-radius: var(--rdv-radius, 6px) !important;
  padding: 12px 16px !important;
  box-sizing: border-box !important;
  line-height: 1.45 !important;
  box-shadow: 0 1px 4px rgba(13, 47, 74, 0.10) !important;
}
.rs-container.fs-feats .rs-section.rs-desc > .rs-row > .rs-col > b {
  display: block !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  color: var(--rvi-bleu-fonce, #0d2f4a) !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
  padding-bottom: 6px !important;
  border-bottom: 1px solid var(--rdv-line, #e2e2e2) !important;
}
.rs-container.fs-feats .rs-section.rs-desc > .rs-row > .rs-col > .rs-row.rs-small {
  display: block !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--rdv-ink, #2a2a2a) !important;
  margin: 0 0 3px 0 !important;
  padding: 0 !important;
}

/* ------------------------------------------------------------
   CARTE / MAP
   ------------------------------------------------------------ */
#map { height: 420px !important; min-height: 420px !important; width: 100% !important; border-radius: var(--rdv-radius, 6px) !important; overflow: hidden !important; }
.leaflet-container { height: 100% !important; width: 100% !important; }

/* ------------------------------------------------------------
   RESPONSIVE PASTILLES BAS DE FICHE
   ------------------------------------------------------------ */
@media (max-width: 900px) {
  .rs-container.fs-feats .rs-section.rs-desc > .rs-row > .rs-col { flex: 1 1 calc(50% - 14px) !important; }
}
@media (max-width: 767px) {
  .rs-container.fs-feats .rs-section.rs-desc > .rs-row > .rs-col { flex: 1 1 100% !important; }
}

/* ------------------------------------------------------------
   CONTENEURS PLEINE LARGEUR EN MOBILE (fiche)
   NB : harmonise a 12px (remplace l'ancien wiidoo-single.css a 10px)
   ------------------------------------------------------------ */
@media (max-width: 767px) {
  .rs-container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  .rs-col {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  .container,
  .rh_section {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  .elementor-section.elementor-section-boxed > .elementor-container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}

/* ============================================================
   FORMULAIRE FLOTTANT FIXE - fiche, DESKTOP uniquement (>=1025px)
   ============================================================ */
@media (min-width: 1025px) {
  .rs-container > .rs-row:has(.rs-form) {
    display: block !important;
  }
  .rs-container > .rs-row > .rs-col.s12.m12.l4:has(.rs-form) {
    position: fixed !important;
    bottom: 24px !important;
    right: 24px !important;
    width: 360px !important;
    max-height: calc(100vh - 120px) !important;
    overflow-y: auto !important;
    z-index: 9000 !important;
    margin: 0 !important;
    transition: transform .35s ease !important;
  }
  .rs-container > .rs-row:has(.rs-form) > .rs-col.l8 {
    width: 100% !important;
    flex: none !important;
    max-width: 100% !important;
  }
  .rs-container > .rs-row > .rs-col.s12.m12.l4:has(.rs-form) .rs-form {
    box-shadow: 0 12px 40px rgba(0,0,0,.18) !important;
  }

  /* Etat masque : glisse hors ecran a droite */
  .rs-col.s12.m12.l4.rdv-form-hidden {
    transform: translateX(calc(100% + 24px)) !important;
  }

  /* Bouton fleche retractable */
  #rdv-form-toggle {
    position: fixed !important;
    bottom: 50% !important;
    right: 392px !important;
    width: 34px !important;
    height: 60px !important;
    border: 0 !important;
    border-radius: 6px 0 0 6px !important;
    background: var(--rvi-orange, #e0742f) !important;
    color: #fff !important;
    font-size: 16px !important;
    cursor: pointer !important;
    z-index: 9001 !important;
    box-shadow: -2px 2px 8px rgba(0,0,0,.2) !important;
    transition: right .35s ease !important;
  }
  #rdv-form-toggle.rdv-toggle-collapsed {
    right: 0 !important;
    border-radius: 6px 0 0 6px !important;
  }
}
/* Masquer le bouton retractable en mobile/tablette */
@media (max-width: 1024px) {
  #rdv-form-toggle { display: none !important; }
}

/* ============================================================
   FICHE DESKTOP (>=1025px) : galerie PLEINE LARGEUR.
   Structure : .sglprop1 > .rs-row > .rs-col.l8 > .swiper > .swiper-wrapper(grid)
   ============================================================ */
@media (min-width: 1025px) {

  .sglprop1 .rs-row:has(.singimg) {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .sglprop1 .rs-col.s12.m12.l8:has(.singimg) {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    float: none !important;
    display: block !important;
    box-sizing: border-box !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
  }

  .sglprop1 .rs-col.s12.m12.l8:has(.singimg) .swiper,
  .sglprop1 .rs-col.s12.m12.l8:has(.singimg) .swiper-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  .sglprop1 .rs-col.s12.m12.l8:has(.singimg) .rdv-specbar {
    width: 100% !important;
  }
}

/* ============================================================
   GALERIE FICHE : mosaique DESKTOP/TABLETTE (>=768px)
   ============================================================ */
@media (min-width: 768px) {

  .sglprop1 .swiper-wrapper:has(.singimg) {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    grid-template-rows: 175px 175px !important;
    grid-auto-rows: 0 !important;
    gap: 8px !important;
    height: 358px !important;
    max-height: 358px !important;
    width: 100% !important;
    overflow: hidden !important;
    transform: none !important;
  }

  .sglprop1 .swiper-wrapper:has(.singimg) > .swiper-slide {
    display: none !important;
  }
  .sglprop1 .swiper-wrapper:has(.singimg) > .swiper-slide:nth-child(-n+6) {
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    transform: none !important;
    position: relative !important;
  }

  .sglprop1 .swiper-wrapper:has(.singimg) > .swiper-slide:nth-child(1) {
    grid-column: 1 / 3 !important;
    grid-row: 1 / 3 !important;
  }

  .sglprop1 .swiper-wrapper:has(.singimg) > .swiper-slide > a.glightbox2 {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
  }

  .sglprop1 .swiper-wrapper:has(.singimg) > .swiper-slide .singimg {
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center !important;
    border-radius: 4px !important;
    margin-bottom: 0 !important;
  }

  .sglprop1 .swiper-wrapper:has(.singimg) > .swiper-slide:nth-child(6)::after {
    content: "Voir toutes les photos";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.45);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-weight: 600;
    font-size: 14px;
    border-radius: 4px;
    pointer-events: none;
  }

  .sglprop1 .swiper:has(.singimg) .swiper-button-next,
  .sglprop1 .swiper:has(.singimg) .swiper-button-prev,
  .sglprop1 .swiper-pagination,
  .swiper111 {
    display: none !important;
  }
}

/* ============================================================
   GALERIE DESKTOP (>=1025px) : hauteur des rangees augmentee.
   ============================================================ */
@media (min-width: 1025px) {
  .sglprop1 .swiper-wrapper:has(.singimg) {
    grid-template-rows: 270px 270px !important;
    height: 548px !important;
    max-height: 548px !important;
  }
}

/* ============================================================
   GALERIE FICHE : CARROUSEL Swiper MOBILE (<768px)
   ============================================================ */
@media (max-width: 767px) {

  .sglprop1 .swiper3 {
    height: 260px !important;
    overflow: hidden !important;
  }
  .sglprop1 .swiper3 .swiper-wrapper {
    display: flex !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    height: 260px !important;
    max-height: none !important;
  }

  .sglprop1 .swiper3 .swiper-wrapper > .swiper-slide {
    display: block !important;
    width: 100% !important;
    height: 260px !important;
    margin: 0 !important;
    position: relative !important;
  }
  .sglprop1 .swiper3 .swiper-wrapper > .swiper-slide:nth-child(1) {
    grid-column: auto !important;
    grid-row: auto !important;
  }
  .sglprop1 .swiper3 .swiper-wrapper > .swiper-slide:nth-child(6)::after {
    content: none !important;
  }
  .sglprop1 .swiper3 .swiper-wrapper > .swiper-slide .singimg {
    width: 100% !important;
    height: 260px !important;
    background-size: cover !important;
    background-position: center !important;
    border-radius: 4px !important;
  }

  .sglprop1 .swiper3 .swiper-button-next,
  .sglprop1 .swiper3 .swiper-button-prev {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    background: rgba(224,116,47,.92) !important;
    border-radius: 50% !important;
    box-shadow: none !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 10 !important;
  }
  .sglprop1 .swiper3 .swiper-button-prev { left: 10px !important; right: auto !important; }
  .sglprop1 .swiper3 .swiper-button-next { right: 10px !important; left: auto !important; }
  .sglprop1 .swiper3 .swiper-button-next::after,
  .sglprop1 .swiper3 .swiper-button-prev::after {
    color: #fff !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    -webkit-text-stroke: 0 !important;
  }
  .sglprop1 .swiper3 .swiper-button-next:active,
  .sglprop1 .swiper3 .swiper-button-prev:active {
    background: rgba(201,98,31,.95) !important;
  }

  .sglprop1 .swiper-pagination { display: block !important; }
}

/* ============================================================
   GALERIE MINIATURES — responsive 900px (single)
   ============================================================ */
@media only screen and (max-width: 900px) {
  .swiper111 { height: 89px !important; box-sizing: border-box !important; padding: 10px 0 !important; }
  .swiper111 .swiper-slide { width: 50% !important; height: 144px !important; opacity: 0.4 !important; }
  .sglproptitle, .sglpropprice { text-align: center !important; }
}

/* ===== Selecteur de langue MOBILE — dropdown au tap (fiche) ===== */
@media (max-width: 767px) {

  .inspiry-language-switcher ul {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    list-style: none !important;
    background: #ffffff !important;
    position: relative !important;
  }

  .inspiry-language-switcher > ul > li,
  .inspiry-language-switcher li.inspiry-language,
  .inspiry-language-switcher li.inspiry-language.current,
  .inspiry-language-switcher li.inspiry-language.open {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    position: relative !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  .inspiry-language-switcher li.inspiry-language a {
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 !important;
    line-height: 0 !important;
  }

  .inspiry-language-switcher li.inspiry-language img,
  .inspiry-language-switcher li.inspiry-language img.inspiry-no-language-name {
    width: 30px !important;
    height: 20px !important;
    object-fit: cover !important;
    display: block !important;
    border-radius: 2px !important;
    margin: 0 !important;
  }

  .inspiry-language-switcher:not(.rdv-lang-open) li.inspiry-language:not(.current) {
    display: none !important;
  }

  .inspiry-language-switcher:not(.rdv-lang-open) li.inspiry-language.current::after {
    content: "▾";
    font-size: 12px !important;
    line-height: 1 !important;
    color: var(--rvi-bleu-fonce, #0d2f4a) !important;
    margin-left: 6px !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  .inspiry-language-switcher.rdv-lang-open li.inspiry-language.current::after {
    content: "▴";
    font-size: 12px !important;
    color: var(--rvi-bleu-fonce, #0d2f4a) !important;
    margin-left: 6px !important;
  }

  .inspiry-language-switcher.rdv-lang-open li.inspiry-language {
    display: inline-flex !important;
  }

  .inspiry-language-switcher li.inspiry-language.current img {
    outline: 2px solid var(--rvi-bleu-clair, #2e8bd6) !important;
    outline-offset: 1px !important;
  }
}

/* ============================================================
   FICHE : barre de specs principales (.rdv-specbar)
   Injectee par JS en fin de colonne galerie .l8.
   BEDS / BATHS / BUILT / TERRACE.
   ============================================================ */
.rdv-specbar {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: space-around !important;
  align-items: stretch !important;
  margin: 24px 0 !important;
  padding: 20px 0 !important;
  border-top: 1px solid var(--rdv-line, #e2e2e2) !important;
  border-bottom: 1px solid var(--rdv-line, #e2e2e2) !important;
  background: #fff !important;
}
.rdv-specbar-item {
  flex: 1 1 25% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 4px 8px !important;
  border-right: 1px solid var(--rdv-line, #e2e2e2) !important;
}
.rdv-specbar-item:last-child { border-right: 0 !important; }
.rdv-specbar-label {
  display: block !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--rvi-bleu-fonce, #0d2f4a) !important;
  margin-bottom: 6px !important;
}
.rdv-specbar-value {
  display: block !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: var(--rdv-ink, #2a2a2a) !important;
}
@media (max-width: 767px) {
  .rdv-specbar-item { flex: 1 1 50% !important; margin-bottom: 12px !important; }
  .rdv-specbar-item:nth-child(2n) { border-right: 0 !important; }
}

/* ============================================================
   FICHE : prix en evidence sous le titre (.rdv-price-hero)
   + masquage de la ligne Prix du tableau detaille (anti-doublon)
   + barre 2 (TERRAIN/PARKING/CHARGES/IBI) sous la description
   ============================================================ */
.rdv-price-hero {
  font-size: 34px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: var(--rvi-orange, #e0742f) !important;
  text-align: left !important;
  margin: 8px 0 16px 0 !important;
  letter-spacing: -0.01em !important;
}

/* Masquer le tableau detaille complet (infos reprises ailleurs). */
.sglprop1 .rs-col.s12.m12.l4:has(.rs-col.s6):not(:has(.rs-form)) {
  display: none !important;
}

.rdv-specbar2 {
  margin-top: 32px !important;
}

/* Description en justifie */
.sglprop1 .rs-col.s12.m12.l8 {
  text-align: justify !important;
}
.sglprop1 .rs-col.s12.m12.l8 .rdv-specbar,
.sglprop1 .rs-col.s12.m12.l8 .rdv-specbar-item {
  text-align: center !important;
}