/* ==========================================================================
   WP-HOTEL-BOOKING.CSS — L'Instant Plaisir
   Structure HTML réelle inspectée
   ========================================================================== */

@keyframes shimmer-gold {
  0%   { background-position: -200% center; }
  100% { background-position:  200% center; }
}
@keyframes candle-flicker {
  0%,100% { opacity:1; } 50% { opacity:.88; } 84% { opacity:.93; }
}

/* ==========================================================================
   1. CONTENEUR PRINCIPAL
   ========================================================================== */

.single-hb_room .summary.entry-summary {
  display: block !important;
  max-width: 1200px !important;
  margin: 40px auto !important;
  padding: 0 30px !important;
}

/* Titre chambre */
.single-hb_room .room-single-top .title h1,
.single-hb_room h1.entry-title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(32px, 4vw, 52px) !important;
  color: #fff !important;
  text-transform: none !important;
  letter-spacing: 0.02em !important;
  margin-bottom: 30px !important;
  font-style: italic;
}

/* ==========================================================================
   2. GALERIE — pleine largeur en haut
   ========================================================================== */

.single-hb_room #hb_room_images.room_media_content {
  width: 100% !important;
  margin-bottom: 50px !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

.single-hb_room #hb_room_images img {
  width: 100% !important;
  height: auto !important;
  border-radius: 6px !important;
  border: 1px solid rgba(197,160,89,0.1) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.7) !important;
  filter: brightness(0.88) contrast(1.08) !important;
  transition: filter 0.5s ease !important;
  animation: candle-flicker 7s ease-in-out infinite !important;
}

/* ==========================================================================
   3. ZONE ONGLETS + FORMULAIRE — côte à côte
   ========================================================================== */

.single-hb_room .wphb-single-room-content {
  display: grid !important;
  grid-template-columns: 1fr 380px !important;
  gap: 50px !important;
  align-items: start !important;
}

/* Onglets — colonne gauche */
.single-hb_room .hb_single_room_details {
  min-width: 0 !important;
}

/* Formulaire — colonne droite sticky */
.single-hb_room .wphb-single-room-booking-container {
  position: sticky !important;
  top: 100px !important;
  min-width: 0 !important;
}

/* ==========================================================================
   4. FORMULAIRE — carte sombre
   ========================================================================== */

.wphb-single-room-booking-container {
  background: #0f0f13 !important;
  background-color: #0f0f13 !important;
  border: 1px solid rgba(197,160,89,0.22) !important;
  border-radius: 8px !important;
  padding: 35px !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: 0 30px 80px rgba(0,0,0,0.5) !important;
}

/* Filet doré animé */
.wphb-single-room-booking-container::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, #c5a059, #8b0a6e, #c5a059, transparent);
  background-size: 200% auto;
  animation: shimmer-gold 4s linear infinite;
  z-index: 2;
}

/* Tuer tous les fonds blancs internes */
.wphb-single-room-booking-container div,
.wphb-single-room-booking-container form,
.wphb-single-room-booking-container p,
#hotel_booking_room_hidden,
.hb-booking-room-form-header,
.hb-booking-room-form-head,
.wphb-room-tmpl-dates-available,
.hb-search-room-results,
.hb-search-results-form-container {
  background: transparent !important;
  background-color: transparent !important;
}

/* Titre "Booking form" */
.hb-booking-room-form-header p,
.hb-booking-room-form-head p {
  font-family: 'Cinzel', serif !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 4px !important;
  color: rgba(197,160,89,0.45) !important;
  margin-bottom: 24px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid rgba(197,160,89,0.1) !important;
}

/* ==========================================================================
   5. PRIX
   ========================================================================== */

.wphb-room-tmpl-dates-available .price {
  padding: 18px 20px !important;
  margin-bottom: 22px !important;
  border: 1px solid rgba(197,160,89,0.1) !important;
  border-radius: 4px !important;
  position: relative; overflow: hidden;
}

.wphb-room-tmpl-dates-available .price::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, #c5a059, transparent);
  background-size: 200% auto;
  animation: shimmer-gold 5s linear infinite;
}

.price .title-price {
  font-family: 'Cinzel', serif !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 3px !important;
  color: rgba(197,160,89,0.4) !important;
  display: block !important;
  margin-bottom: 6px !important;
}

.price .price_value .amount,
.price .price_value bdi,
.price bdi {
  color: #c5a059 !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 42px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-shadow: 0 0 30px rgba(197,160,89,0.2) !important;
}

.price .unit,
.price .tax-text {
  font-family: 'Cinzel', serif !important;
  font-size: 11px !important;
  color: rgba(197,160,89,0.35) !important;
  margin-left: 6px !important;
}

/* Prix total après dates */
.wphb-single-room-booking-container .hb-booking-cost {
  background: rgba(197,160,89,0.04) !important;
  border: 1px solid rgba(197,160,89,0.12) !important;
  border-radius: 4px !important;
  padding: 16px 20px !important;
  margin-top: 18px !important;
}

.wphb-single-room-booking-container .hb-booking-cost .amount,
.wphb-single-room-booking-container .hb-booking-cost strong {
  color: #c5a059 !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 26px !important;
  font-style: italic !important;
}

/* ==========================================================================
   6. LABELS & INPUTS
   ========================================================================== */

.wphb-single-room-booking-container label {
  font-family: 'Cinzel', serif !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  color: rgba(197,160,89,0.6) !important;
  display: block !important;
  margin-bottom: 8px !important;
  font-weight: 400 !important;
  padding: 0 !important;
  border: none !important;
}

.wphb-single-room-booking-container input[type="text"],
.wphb-single-room-booking-container input[type="date"],
.wphb-single-room-booking-container input[type="number"] {
  background: rgba(255,255,255,0.04) !important;
  background-color: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(197,160,89,0.2) !important;
  border-radius: 4px !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  padding: 13px 15px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: all 0.3s ease !important;
  outline: none !important;
  -webkit-appearance: none !important;
  box-shadow: none !important;
}

.wphb-single-room-booking-container input:focus {
  background: rgba(197,160,89,0.05) !important;
  border-color: #c5a059 !important;
  box-shadow: 0 0 0 3px rgba(197,160,89,0.1) !important;
}

.wphb-single-room-booking-container select {
  background: rgba(255,255,255,0.04) !important;
  background-color: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(197,160,89,0.2) !important;
  border-radius: 4px !important;
  color: #fff !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 15px !important;
  padding: 13px 36px 13px 15px !important;
  width: 100% !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  cursor: pointer !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23c5a059' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  box-shadow: none !important;
}

.hb-booking-room-form-group {
  margin-bottom: 18px !important;
}

/* Masquer adultes et enfants */
.hb-booking-room-form-group:has(input[name="adult_qty"]),
.hb-booking-room-form-group:has(input[name="child_qty"]) {
  display: none !important;
}

/* ==========================================================================
   7. BOUTON RÉSERVER
   ========================================================================== */

.wphb-single-room-booking-container button[type="submit"],
.wphb-single-room-booking-container input[type="submit"],
.hb-search-room-results button[type="submit"],
form.hotel-booking-single-room-action button[type="submit"] {
  background: linear-gradient(135deg, #8b0a6e, #5a0048) !important;
  background-color: #8b0a6e !important;
  color: #fff !important;
  border: none !important;
  border-radius: 4px !important;
  width: 100% !important;
  padding: 18px !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  font-style: italic !important;
  cursor: pointer !important;
  box-shadow: 0 8px 30px rgba(139,10,110,0.5) !important;
  transition: all 0.4s ease !important;
  margin-top: 24px !important;
  min-height: 58px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  overflow: hidden !important;
}

.wphb-single-room-booking-container button[type="submit"]:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 15px 45px rgba(139,10,110,0.7) !important;
}

/* Masquer bouton Rechercher */
.wphb-single-room-booking-container .hb-search-room-btn,
#hb-search-room { display: none !important; }

/* ==========================================================================
   8. DATEPICKER
   ========================================================================== */

#ui-datepicker-div, .ui-datepicker {
  background: #131318 !important;
  background-color: #131318 !important;
  border: 1px solid rgba(197,160,89,0.45) !important;
  border-radius: 8px !important;
  font-family: 'Inter', sans-serif !important;
  box-shadow: 0 40px 100px rgba(0,0,0,0.9) !important;
  padding: 16px !important;
  z-index: 999999 !important;
}

.ui-datepicker-header {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(197,160,89,0.1) !important;
  padding: 6px 0 12px !important;
  margin-bottom: 10px !important;
}

.ui-datepicker-title { color: #c5a059 !important; font-family: 'Cinzel', serif !important; font-size: 11px !important; text-transform: uppercase !important; letter-spacing: 3px !important; }
.ui-datepicker-prev, .ui-datepicker-next { background: transparent !important; border: none !important; cursor: pointer !important; top: 4px !important; }
.ui-datepicker-prev span, .ui-datepicker-next span { display: none !important; }
.ui-datepicker-prev::after { content: '‹'; color: #c5a059; font-size: 22px; display: block; }
.ui-datepicker-next::after { content: '›'; color: #c5a059; font-size: 22px; display: block; }
.ui-datepicker-prev:hover, .ui-datepicker-next:hover { background: rgba(197,160,89,0.1) !important; border-radius: 50% !important; }
.ui-datepicker th { color: rgba(197,160,89,0.38) !important; font-family: 'Cinzel', serif !important; font-size: 10px !important; text-transform: uppercase !important; padding: 8px 3px !important; font-weight: 400 !important; background: transparent !important; }
.ui-datepicker td { padding: 2px !important; }
.ui-datepicker .ui-state-default { background: transparent !important; background-color: transparent !important; color: rgba(255,255,255,0.55) !important; border: 1px solid rgba(255,255,255,0.04) !important; border-radius: 4px !important; text-align: center !important; padding: 8px 2px !important; font-size: 12px !important; display: block !important; transition: all 0.2s ease !important; cursor: pointer !important; }
.ui-datepicker .ui-state-default:hover { background: rgba(197,160,89,0.12) !important; border-color: rgba(197,160,89,0.3) !important; color: #c5a059 !important; }
.ui-datepicker .ui-state-active { background: #8b0a6e !important; background-color: #8b0a6e !important; color: #fff !important; border-color: #8b0a6e !important; border-radius: 50% !important; box-shadow: 0 0 14px rgba(139,10,110,0.65) !important; }
.ui-datepicker .ui-state-highlight { background: rgba(197,160,89,0.1) !important; color: #c5a059 !important; border-color: rgba(197,160,89,0.28) !important; border-radius: 50% !important; }
.ui-datepicker td.ui-state-disabled { opacity: 0.2 !important; cursor: not-allowed !important; }
.ui-datepicker td.ui-state-disabled .ui-state-default { text-decoration: line-through !important; border-color: transparent !important; }
.ui-datepicker td.dp-highlight .ui-state-default { background: rgba(139,10,110,0.2) !important; border-color: rgba(139,10,110,0.3) !important; color: rgba(255,180,220,0.75) !important; border-radius: 0 !important; }

/* ==========================================================================
   9. ONGLETS
   ========================================================================== */

.single-hb_room ul.hb_single_room_tabs {
  list-style: none !important;
  padding: 0 !important; margin: 0 0 0 !important;
  display: flex !important;
  border-bottom: 1px solid rgba(197,160,89,0.12) !important;
  background: transparent !important;
  flex-wrap: wrap;
}

.single-hb_room ul.hb_single_room_tabs li a {
  font-family: 'Cinzel', serif !important;
  font-size: 11px !important; text-transform: uppercase !important;
  letter-spacing: 2px !important; color: rgba(255,255,255,0.3) !important;
  text-decoration: none !important; padding: 14px 20px !important;
  display: block !important; border-bottom: 2px solid transparent !important;
  margin-bottom: -1px !important; transition: all 0.3s ease !important;
  background: transparent !important;
}

.single-hb_room ul.hb_single_room_tabs li.active a,
.single-hb_room ul.hb_single_room_tabs li a:hover {
  color: #c5a059 !important;
  border-bottom-color: #c5a059 !important;
}

.single-hb_room .hb_single_room_tabs_content {
  padding: 30px 0 !important;
  background: transparent !important;
  color: rgba(255,255,255,0.45) !important;
  font-size: 15px !important; line-height: 1.9 !important;
}

.single-hb_room .hb_single_room_tabs_content p { color: rgba(255,255,255,0.45) !important; }

/* Tableau forfaits */
.single-hb_room .hb-pricing-table { width: 100% !important; border-collapse: collapse !important; }
.single-hb_room .hb-pricing-table th { font-family: 'Cinzel', serif !important; font-size: 10px !important; text-transform: uppercase !important; letter-spacing: 2px !important; color: rgba(197,160,89,0.55) !important; padding: 14px 12px !important; border-bottom: 1px solid rgba(197,160,89,0.12) !important; font-weight: 400 !important; background: transparent !important; text-align: left !important; }
.single-hb_room .hb-pricing-table td { color: rgba(255,255,255,0.45) !important; padding: 12px !important; border-bottom: 1px solid rgba(255,255,255,0.03) !important; font-size: 14px !important; background: transparent !important; }

/* ==========================================================================
   10. GALERIE DANS L'ONGLET DESCRIPTION — corrige le vide à droite
   ========================================================================== */

/* La colonne gauche (onglets) doit remplir 100% de sa cellule de grille */
.single-hb_room .hb_single_room_details,
.single-hb_room .hb_single_room_tabs_content,
.single-hb_room .hb_single_room_tabs_content > * {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Toute figure / image insérée dans le contenu (galerie Gutenberg classique
   ou bloc "Galerie") doit occuper toute la largeur disponible plutôt que
   sa taille native, qui laissait un vide à droite dans la grille 1fr/380px */
.single-hb_room .hb_single_room_tabs_content .wp-block-gallery,
.single-hb_room .hb_single_room_tabs_content ul.gallery,
.single-hb_room .hb_single_room_tabs_content .gallery {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 14px !important;
  width: 100% !important;
  margin: 24px 0 !important;
  list-style: none !important;
  padding: 0 !important;
}

.single-hb_room .hb_single_room_tabs_content .wp-block-image,
.single-hb_room .hb_single_room_tabs_content li.gallery-item,
.single-hb_room .hb_single_room_tabs_content figure.wp-block-image,
.single-hb_room .hb_single_room_tabs_content .gallery-icon {
  margin: 0 !important;
  width: 100% !important;
}

.single-hb_room .hb_single_room_tabs_content .wp-block-gallery img,
.single-hb_room .hb_single_room_tabs_content .gallery img,
.single-hb_room .hb_single_room_tabs_content img {
  width: 100% !important;
  height: 260px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: 1px solid rgba(197,160,89,0.1) !important;
  box-shadow: 0 15px 40px rgba(0,0,0,0.5) !important;
  filter: brightness(0.9) contrast(1.06) !important;
  transition: transform 0.5s ease, filter 0.4s ease !important;
  cursor: pointer !important;
}

.single-hb_room .hb_single_room_tabs_content img:hover {
  transform: scale(1.02) !important;
  filter: brightness(1) contrast(1.08) !important;
}

/* Texte de description : si vide ou très court, on évite l'effet de trou */
.single-hb_room .hb_single_room_tabs_content > p:empty { display: none !important; }

/* ==========================================================================
   11. BARRE DE RÉSERVATION FIXE MOBILE — plus intuitif sur petit écran
   ========================================================================== */

.hb-mobile-book-bar { display: none; }

@media (max-width: 960px) {
  .hb-mobile-book-bar {
    display: flex !important;
    position: fixed !important;
    left: 0; right: 0; bottom: 0;
    z-index: 9999 !important;
    background: #0f0f13 !important;
    border-top: 1px solid rgba(197,160,89,0.25) !important;
    padding: 12px 16px calc(12px + env(safe-area-inset-bottom)) !important;
    box-shadow: 0 -10px 30px rgba(0,0,0,0.5) !important;
  }
}

/* ==========================================================================
   12. RESPONSIVE
   ========================================================================== */

@media (max-width: 960px) {
  .single-hb_room .wphb-single-room-content {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }
  .single-hb_room .wphb-single-room-booking-container { position: static !important; }
  .single-hb_room .summary.entry-summary { padding: 0 20px !important; }
  #ui-datepicker-div { width: calc(100vw - 40px) !important; }
}

@media (max-width: 768px) {
  .single-hb_room .room-single-top .title h1,
  .single-hb_room h1.entry-title {
    font-size: clamp(26px, 7vw, 36px) !important;
    margin-bottom: 20px !important;
  }
  .single-hb_room .summary.entry-summary { padding: 0 16px !important; margin: 24px auto !important; }
  .single-hb_room .hb_single_room_tabs_content .wp-block-gallery,
  .single-hb_room .hb_single_room_tabs_content ul.gallery,
  .single-hb_room .hb_single_room_tabs_content .gallery {
    grid-template-columns: 1fr !important;
  }
  .single-hb_room .hb_single_room_tabs_content .wp-block-gallery img,
  .single-hb_room .hb_single_room_tabs_content .gallery img,
  .single-hb_room .hb_single_room_tabs_content img {
    height: 220px !important;
  }
  .single-hb_room ul.hb_single_room_tabs {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }
  .single-hb_room ul.hb_single_room_tabs::-webkit-scrollbar { display: none !important; }
  .single-hb_room ul.hb_single_room_tabs li a {
    padding: 12px 14px !important;
    font-size: 10px !important;
    white-space: nowrap !important;
  }
  .wphb-single-room-booking-container { padding: 24px !important; }
  .price .price_value .amount,
  .price .price_value bdi,
  .price bdi { font-size: 32px !important; }
}

@media (max-width: 480px) {
  .single-hb_room .summary.entry-summary { padding: 0 12px !important; }
  .single-hb_room .hb_single_room_tabs_content .wp-block-gallery img,
  .single-hb_room .hb_single_room_tabs_content .gallery img,
  .single-hb_room .hb_single_room_tabs_content img {
    height: 190px !important;
  }
  .wphb-single-room-booking-container button[type="submit"],
  .wphb-single-room-booking-container input[type="submit"] {
    font-size: 15px !important;
    padding: 15px !important;
  }
}

/* ==========================================================================
   FIX LARGEUR FORMULAIRE + FOND PAGE
   ========================================================================== */

/* Fond page chambre — noir absolu */
body.single-hb_room,
.single-hb_room #page,
.single-hb_room #content,
.single-hb_room .site-content,
.single-hb_room main {
  background: #050505 !important;
  background-color: #050505 !important;
}

/* Reset le grid qui écrase le formulaire */
.single-hb_room .wphb-single-room-content {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px) !important;
  gap: 50px !important;
  align-items: start !important;
  width: 100% !important;
}

/* Formulaire — largeur minimale garantie */
.single-hb_room .wphb-single-room-booking-container {
  width: 100% !important;
  min-width: 320px !important;
  max-width: 420px !important;
  box-sizing: border-box !important;
}

/* Conteneur entry-summary — pleine largeur */
.single-hb_room .summary.entry-summary {
  width: 100% !important;
  max-width: 1200px !important;
  box-sizing: border-box !important;
}

/* hb-search-results-form-container — flex → block */
.hb-search-results-form-container {
  display: block !important;
  width: 100% !important;
}

/* Chaque groupe de champ prend toute la largeur */
.hb-search-results-form-container > div,
.hb-search-results-form-container .hb-booking-room-form-group {
  width: 100% !important;
  margin-bottom: 18px !important;
}
/* ==========================================================================
   13. LIGNE GALERIE + FORMULAIRE — construite en JS (main.js)
   ========================================================================== */

.single-hb_room .hb-top-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px) !important;
  gap: 50px !important;
  align-items: start !important;
  margin-bottom: 40px !important;
}

.single-hb_room .hb-top-row #hb_room_images.room_media_content {
  margin-bottom: 0 !important;
}

.single-hb_room .hb-top-row .wphb-single-room-booking-container {
  position: sticky !important;
  top: 100px !important;
}

.single-hb_room .hb_single_room_details {
  width: 100% !important;
}

@media (max-width: 960px) {
  .single-hb_room .hb-top-row {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }
  .single-hb_room .hb-top-row .wphb-single-room-booking-container {
    position: static !important;
  }
}
/* ==========================================================================
   15. AVIS (REVIEWS) — WP Hotel Booking
   ========================================================================== */

.single-hb_room .hb_single_room_details h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: 26px !important;
  color: #fff !important;
  margin: 30px 0 24px !important;
}

/* Barre tri/filtre au-dessus de la liste */
.single-hb_room .hb-room-commentlist-sort-filter {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  margin-bottom: 30px !important;
  padding-bottom: 20px !important;
  border-bottom: 1px solid rgba(197,160,89,0.12) !important;
}

.single-hb_room .hb-room-commentlist-sort-filter * {
  color: rgba(255,255,255,0.55) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
}

.single-hb_room .hb-room-commentlist-sort-filter select {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(197,160,89,0.2) !important;
  border-radius: 4px !important;
  color: #fff !important;
  padding: 8px 12px !important;
}

.single-hb_room .hb-room-commentlist-sort-filter button,
.single-hb_room .hb-room-commentlist-sort-filter a {
  background: transparent !important;
  border: 1px solid rgba(197,160,89,0.25) !important;
  border-radius: 30px !important;
  padding: 6px 16px !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.single-hb_room .hb-room-commentlist-sort-filter button:hover,
.single-hb_room .hb-room-commentlist-sort-filter button.active,
.single-hb_room .hb-room-commentlist-sort-filter a:hover {
  border-color: #c5a059 !important;
  color: #c5a059 !important;
}

/* Liste des avis */
.single-hb_room ol.commentlist {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}

.single-hb_room ol.commentlist li.comment {
  background: rgba(255,255,255,0.02) !important;
  border: 1px solid rgba(197,160,89,0.1) !important;
  border-radius: 8px !important;
  padding: 24px !important;
  list-style: none !important;
}

.single-hb_room .comment_container {
  display: flex !important;
  align-items: flex-start !important;
  gap: 18px !important;
}

/* Avatar — c'est lui qui débordait en énorme cercle blanc */
.single-hb_room .comment_container img.avatar {
  width: 50px !important;
  height: 50px !important;
  max-width: 50px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  border: 1px solid rgba(197,160,89,0.3) !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
}

.single-hb_room .comment-text {
  flex: 1 !important;
  min-width: 0 !important;
}

.single-hb_room .hb-room-review-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 17px !important;
  color: #fff !important;
  margin: 0 0 6px !important;
}

.single-hb_room .comment-text .meta {
  font-family: 'Cinzel', serif !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  color: rgba(197,160,89,0.5) !important;
  margin: 0 0 12px !important;
}

.single-hb_room .comment-text .meta strong {
  color: rgba(197,160,89,0.75) !important;
  font-weight: 700 !important;
}

/* Le texte de l'avis lui-même — c'était invisible (texte foncé sur fond blanc) */
.single-hb_room .comment-text .description {
  color: rgba(255,255,255,0.65) !important;
  font-size: 14px !important;
  line-height: 1.8 !important;
}

.single-hb_room .comment-text .description p {
  color: rgba(255,255,255,0.65) !important;
  margin: 0 !important;
}

@media (max-width: 640px) {
  .single-hb_room .comment_container {
    gap: 12px !important;
  }
  .single-hb_room .comment_container img.avatar {
    width: 40px !important;
    height: 40px !important;
    max-width: 40px !important;
  }
  .single-hb_room ol.commentlist li.comment {
    padding: 16px !important;
  }
  .single-hb_room .hb-room-commentlist-sort-filter {
    justify-content: center !important;
    text-align: center;
  }
}