/* ─────────────────────────────────────────────
   SONNER SALÓN — lo que el sitio lee de la API
   (equipo, servicios, horarios, próximos huecos)
   ───────────────────────────────────────────── */

/* pill de ejemplo: cuando la API todavía no tiene el dato */
.tbd-ej{
  display:inline-flex; align-items:center; gap:.6em;
  font-size:.62rem; letter-spacing:.2em; text-transform:uppercase; font-weight:500;
  border:1px solid currentColor; padding:.42em .8em; margin-bottom:16px;
  opacity:.75;
}
.tbd-ej b{ font-weight:500; }
.tbd-ej span{ letter-spacing:.06em; text-transform:none; font-weight:300; opacity:.85; }

/* ── equipo ────────────────────────────────── */
.equipo{
  display:grid; gap:clamp(16px,2.6vw,28px);
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
}
.equipo li{ display:flex; align-items:center; gap:16px; }
.equipo__f{
  flex:none; width:76px; height:76px; overflow:hidden;
  background:var(--ocre-hondo); color:var(--cal);
  display:flex; align-items:center; justify-content:center;
}
.equipo__f img{ width:100%; height:100%; object-fit:cover; }
.equipo__f span{ font-family:var(--display); font-size:1.7rem; line-height:1; letter-spacing:.04em; }
.equipo__n{ font-family:var(--display); font-size:clamp(20px,3vw,27px); line-height:1.1; }
.equipo__r{ font-size:.68rem; letter-spacing:.2em; text-transform:uppercase; opacity:.6; margin-top:3px; }

/* ── servicios desde la API ────────────────── */
.serv__g{
  grid-column:1/-1; font-size:.66rem; letter-spacing:.22em; text-transform:uppercase;
  font-weight:500; opacity:.55; padding-top:22px; padding-bottom:4px;
  border:0 !important;
}
.serv__g:first-child{ padding-top:0; }
.serv li.serv__g{ display:block; }
.serv__p{ font-variant-numeric:tabular-nums; white-space:nowrap; }
.serv__p small{ display:block; font-size:.66rem; letter-spacing:.14em; text-transform:uppercase; opacity:.7; font-weight:300; }

/* ── abierto ahora ─────────────────────────── */
.abierto{
  margin-left:.8em; font-size:.6rem; letter-spacing:.18em; text-transform:uppercase;
  border:1px solid currentColor; padding:.24em .6em; white-space:nowrap; opacity:1;
}
.abierto--si{ color:#7BD9A4; }
.abierto--no{ opacity:.55; }

/* ── próximos huecos ───────────────────────── */
.libres{ margin-top:clamp(26px,4vw,40px); }
.libres__t{
  font-size:.68rem; letter-spacing:.22em; text-transform:uppercase; font-weight:500;
  opacity:.72; margin-bottom:12px;
}
.libres__fila{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:10px; }
.libres__d{
  font-size:.66rem; letter-spacing:.18em; text-transform:uppercase; opacity:.6;
  min-width:70px;
}
.libres__h{
  min-height:44px; padding:8px 14px; cursor:pointer;
  background:transparent; color:inherit; border:1px solid currentColor; border-radius:0;
  font-family:var(--sans); font-size:.94rem; font-variant-numeric:tabular-nums;
  transition:background .2s ease, color .2s ease;
}
.field--deep .libres__h{ border-color:rgba(250,246,238,.55); }
@media (hover:hover){
  .libres__h:not([disabled]):hover{ background:var(--cal); color:var(--ocre-hondo); }
}
.libres__h[disabled]{ cursor:default; opacity:.5; }
.libres__nota{ font-size:.86rem; font-weight:300; opacity:.75; max-width:44ch; }
