/* =========================================================
   Refugio de Kalma — Home CSS (unificado / sin duplicados)
   ========================================================= */

/* ---------- Airbnb highlight (banner rating/host) ---------- */
.rk-highlight{
  max-width: 100%;
  margin: 0 auto;
}

.rk-highlight__inner{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  justify-content: center;
}

.rk-pill{
  display:flex;
  align-items:center;
  gap:8px;
  flex-flow:column;
}

.rk-divider{
  width:1px;
  height:22px;
  background:var( --e-global-color-thmv_dark );
}

.rk-rating__number{
  font-size:1.2rem;
  font-weight:700;
  line-height:1;
}

.rk-stars{
  display:flex;
  gap:2px;
}

.rk-stars svg{
  width:10px;
  height:10px;
  fill:var( --e-global-color-thmv_dark );
  opacity:.9;
}

.rk-favorite{
  gap:10px;
  flex-flow:row;
}

.rk-laurel{ display:block; }

.rk-favorite__text{
  font-weight:600;
  line-height:1.05;
  text-align:center;
}

.rk-reviews__number{
  font-weight:700;
  font-size:1.2rem;
}
.rk-reviews-title-count{
  font-weight:700;
  margin-right:0.5rem;
}
.rk-reviews__label{
  font-size:0.8rem;
  line-height:0rem;
  font-weight:600;
}

.rk-host{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:20px;
  justify-content: center;
}

.rk-host__avatarWrap{
  position:relative;
  width:40px;
  height:40px;
}

.rk-host__avatar{
  width:40px;
  height:40px;
  border-radius:999px !important;
  display:block;
  object-fit:cover;
}

.rk-host__badge{
  position:absolute;
  right:-6px;
  bottom:-6px;
  border-radius:999px;
  padding:2px;
  box-shadow:0 2px 10px var( --e-global-color-thmv_shadow );
}


/* ---------- Reviews widget ---------- */

/* Header + filtros */
.reviews-filters{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:0 0 14px 0;
}

/* Pills (filtros) */
.review-filters{
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:nowrap;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  padding:4px 0 10px;
}
.review-filters::-webkit-scrollbar{ display:none; }

.filter-pill{
  border:none;
  border-radius:999px;
  padding:10px 14px;
  cursor:pointer;
  font-size:0.875rem;
  line-height:1;
  white-space:nowrap;
  user-select:none;
  transition: transform .05s ease, background .15s ease, border-color .15s ease, color .15s ease;
}
.filter-pill:active{ transform:scale(.98); }

.filter-pill.is-active,
.filter-pill[aria-pressed="true"]{
  background: var(--e-global-color-thmv_shadow);
}

/* Scroll vertical de reseñas */
.content-resenas .elementor-container {
	display: flex;
	align-items: flex-start;
}

@media (min-width:520px){
	.content-resenas .elementor-container > .elementor-column {
	  position: sticky;
	  top: 80px; /* distancia desde arriba */
	}
}
.reviews-scroll{
  /* max-height:630px;
  overflow-y:auto; */
  padding:10px;
}

/* Tarjetas */
.review-card{
  border:1px solid var( --e-global-color-thmv_shadow );
  border-radius:1rem;              /* 16px -> 1rem */
  padding:1rem 1rem 14px;          /* 16px -> 1rem (solo los 16px) */
  margin:0 0 12px 0;
  box-shadow:0 1px 0 var( --e-global-color-thmv_shadow );
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}
.review-card:hover{
  border-color:var( --e-global-color-thmv_shadow );
  box-shadow:0 5px 10px var( --e-global-color-thmv_shadow );
  transform:translateY(-1px);
}

.review-header{
  display:flex;
  gap:12px;
  align-items:center;
  margin-bottom:10px;
}

.avatar{
  width:44px;
  height:44px;
  border-radius:50%;
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  background:#B5ADA2;
  color: var(--e-global-color-thmv_dark);
  display:grid;
  place-items:center;
  font-weight:800;
  letter-spacing:.5px;
  flex:0 0 auto;
}

.reviewer .name{
  margin:0 0 2px 0;
  color: var( --e-global-color-text );
}

.meta{
  display:flex;
  align-items:center;
  gap:10px;
  color:var( --e-global-color-thmv_shadow );
}

.stars{
  letter-spacing:1px;
  color:var( --e-global-color-thmv_primary );
  font-size:0.813rem;
}

/* “Estadía...” */
.stay{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 10px;
}

/* Texto */
.comment{
  margin:0;
  white-space:pre-wrap;
  color: var( --e-global-color-text );
}
.comment + .comment{ margin-top:8px; }

/* Empty state */
.empty{
  border:1px dashed var( --e-global-color-thmv_shadow );
  border-radius:14px;
  padding:1rem;                    /* 16px -> 1rem */
  color:var( --e-global-color-thmv_shadow );
  display:none;
}

/* Responsive */
@media (max-width:520px){
  .review-card{ padding:14px; }    /* no era 16px, lo dejo igual */
  .avatar{ width:40px; height:40px; }
  .filter-pill{ padding:11px 14px; font-size:0.875rem; }
  .reviews-scroll{ padding-right:4px; }
}


/* ---------- Airbnb rating (bloque de calificaciones / barras) ---------- */
:root{
  --bg:var( --e-global-color-thmv_light );
  --muted:var( --e-global-color-thmv_shadow );
  --line:#e0e0e0;
}

.airbnb-rating{
  max-width:520px;
  margin:auto;
  color:var( --e-global-color-text );
}

/* TOP SCORE */
.top-score{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin-bottom:1rem;              /* 16px -> 1rem */
}

.laurel img{
  height:90px;
  object-fit:contain;
}

.score-box{
  font-size:3.500rem;
  font-weight:700;
  border-radius:4px;
  color: var(--e-global-color-thmv_primary);
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
}

/* TEXT */
.title{
  text-align:center;
  margin:1rem 0 8px;               /* 16px -> 1rem */
}

.description{
  text-align:center;
  margin-bottom:20px;
}

/* GENERAL RATING */
.general-rating h3{
  margin-bottom:1rem;              /* 16px -> 1rem */
}

.bar{
  display:flex;
  align-items:center;
  gap:12px;
}

.bar span{
  width:1rem;                      /* 16px -> 1rem */
  font-size:0.875rem;
}

.track{
  flex:1;
  height:6px;
  background:var(--line);
  border-radius:3px;
  overflow:hidden;
}

.fill{
  height:100%;
  background:var( --e-global-color-thmv_dark );
}

/* DETAILS */
.details{
  margin-top:1rem;                 /* 16px -> 1rem */
}

.detail{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:10px 0;
  border-bottom:1px solid var(--line);
  font-size:1rem;                  /* 16px -> 1rem */
}

.detail:last-child{ border-bottom:none; }

.detail-left{
  display:flex;
  align-items:center;
  gap:12px;
}

.icon{
  width:24px;
  height:24px;
  fill:var( --e-global-color-thmv_dark );
}

.icon.stroke{
  fill:none;
  stroke:var( --e-global-color-thmv_dark );
  stroke-width:2.6;
}

.detail strong{ font-weight:600; }

/* Responsive (bloque calificaciones) */
@media (max-width:520px){
  .details{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:stretch;
    justify-content:center;
  }

  .detail-left span,
  .m-dn{
    display:none;
  }

  .m-tc{ text-align:center; }

  .meta{ flex-wrap:wrap; }
	.reviews-scroll {     overflow-y:auto; max-height: 600px;	}
	.review-card:hover{
    box-shadow: none;
}
	.rk-highlight__inner {    gap: 14px 10px;}
}
