/* ════════════════════════════════════════════════════════════════════════════
   🔴 FICHERO GENERADO — NO LO EDITES. Lo escribe `scripts/generar-css.py`.

   Lo que se edita es la hoja COMENTADA:  assets/css/_fuente/amigosyfamilia.css

   Aquí se sirve la misma hoja sin los comentarios, que son el 80 % de los bytes
   que descarga el visitante (`ROADMAP U-284`). Los comentarios NO se han
   perdido: siguen enteros en la fuente, que es donde se leen.
   ════════════════════════════════════════════════════════════════════════════ */
.vc-body.vc-amigos {
  --vc-tono: #c9a6ff;

  --vc-tono-rgb: 201, 166, 255;

  --vc-sobre-tono: #000000;

  --vc-tono-oscuro: #6b4da0;
  --vc-tono-oscuro-rgb: 107, 77, 160;
}

.vc-amigos .cap-lavanda {
  --vc-fondo-a: #c9a6ff;
  --vc-fondo-b: #c9a6ff;
  --vc-bg: #c9a6ff;
  --vc-texto: #0a0508;
  --vc-texto-apoyo: #2a1a4a;
  --vc-linea: rgba(10, 5, 8, 0.22);
  --vc-corte: rgba(10, 5, 8, 0.18);
  --vc-tono: #0a0508;
  --vc-tono-rgb: 10, 5, 8;
  --vc-sobre-tono: #c9a6ff;
  --vc-sombra-tarjeta: 0 12px 30px rgba(10, 5, 8, 0.16);
  --vc-filo: inset 0 1px 0 rgba(255, 255, 255, 0.35);
  background: #c9a6ff;
  color: var(--vc-texto);
}

.vc-amigos .cap-lavanda::after,
.vc-amigos .cap-lavanda::before {
  display: none;
}

.vc-amigos .vc-hero-titulo {
  font-size: clamp(2.2rem, 5.2vw, 4.0rem);
}

@media (min-width: 900px) {
  .vc-amigos .vc-hero-inner {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  }
}

.vc-amigos .vc-hero-foto {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--vc-radio, 18px);

  aspect-ratio: 16 / 9;
  object-fit: cover;
  filter: drop-shadow(0 24px 50px rgba(0, 0, 0, 0.55));
}

.vc-amigos .vc-pendiente {
  padding-block: clamp(3rem, 8vw, 5rem);
}
.vc-amigos .vc-pendiente .vc-titulo {
  opacity: 0.55;
}

.vc-amigos .vc-barras {
  list-style: none;
  margin: clamp(2rem, 5vw, 3rem) 0 0;
  padding: 0;
  display: grid;
  gap: clamp(1rem, 2.5vw, 1.5rem);
  max-width: 42rem;
}

.vc-amigos .vc-barra {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.4rem;
}

.vc-amigos .vc-barra-nombre {
  font-family: 'Syne', sans-serif;
  font-weight: 700;
  font-size: 0.95rem;
  color: var(--vc-texto-apoyo);
}

.vc-amigos .vc-barra-linea {
  display: block;

  width: var(--vc-barra, 100%);
  height: 0.75rem;
  border-radius: 999px;
  background: var(--vc-texto);
}

.vc-amigos .vc-barra--destacada .vc-barra-linea { height: 1.1rem; }
.vc-amigos .vc-barra--destacada .vc-barra-nombre { color: var(--vc-texto); }

.vc-amigos .vc-barra-cifra {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 0.95rem;
  color: var(--vc-texto-apoyo);
}
.vc-amigos .vc-barra--destacada .vc-barra-cifra {
  color: var(--vc-texto);
  font-weight: 700;
}

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {

    .vc-amigos .vc-barras { view-timeline-name: --vc-barras; }

    .vc-amigos .vc-barra--destacada .vc-barra-linea {
      transform-origin: left center;
      animation: vc-barra-crece linear both;
      animation-timeline: --vc-barras;
      animation-range: entry 100% cover 40%;
    }
  }
}

@keyframes vc-barra-crece {
  from { transform: scaleX(var(--vc-barra-ini, 1)); }
  to   { transform: scaleX(1); }
}

.tier-low .vc-amigos .vc-barra--destacada .vc-barra-linea {
  animation: none;
  transform: none;
}

.vc-amigos .vc-prorroga-texto {
  max-width: 46ch;
  margin: 0;
  font-size: clamp(1.05rem, 2.2vw, 1.25rem);
  color: var(--vc-texto);
}

.vc-amigos .vc-prorroga-pie {
  margin: clamp(2rem, 5vw, 3rem) 0 0;
  max-width: 46ch;
  font-size: 0.95rem;
  color: var(--vc-texto-apoyo);
}
.vc-amigos .vc-prorroga-pie strong { color: var(--vc-texto); }

.vc-amigos .vc-paso-enlace,
.vc-amigos .vc-mesa-aviso a,
.vc-amigos .vc-cierre-wa a {
  position: relative;
}
.vc-amigos .vc-paso-enlace::after,
.vc-amigos .vc-mesa-aviso a::after,
.vc-amigos .vc-cierre-wa a::after {
  content: '';
  position: absolute;
  inset: -13px 0;
}

.vc-amigos { --vc-marca-novato: #ffffff; }
.vc-amigos .vc-juego-marca--novato { color: var(--vc-marca-novato); }

.vc-amigos .vc-menu {
  list-style: none;
  margin: clamp(2rem, 5vw, 3rem) 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr));
  gap: clamp(1rem, 3vw, 1.75rem);
}

.vc-amigos .vc-plato {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.vc-amigos .vc-plato-img {
  display: block;
  width: 100%;
  height: auto;

  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: var(--vc-radio, 14px);
}

.vc-amigos .vc-plato-nombre {
  margin: 0;
  font-family: 'Syne', sans-serif;
  font-weight: 700;
  font-size: 1rem;
  color: var(--vc-texto);
}

.vc-amigos .vc-plato-sg {
  display: inline-block;
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 700;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--vc-tono-oscuro);
}

.vc-amigos .vc-plato-pie {
  margin: 0;
  font-size: 0.92rem;
  color: var(--vc-texto);
}

.vc-amigos .vc-plato-marca {
  margin: 0;
  font-size: 0.8rem;
  line-height: 1.45;
  color: var(--vc-texto-apoyo);
}

.vc-amigos .vc-mesa-limpio {
  margin: clamp(1.5rem, 4vw, 2rem) 0 0;
  max-width: 46ch;
  font-size: 1.05rem;
  color: var(--vc-texto);
}

.vc-amigos .vc-mesa-aviso {
  margin: clamp(2rem, 5vw, 3rem) 0 0;
  max-width: 60ch;
  font-size: 0.88rem;
  line-height: 1.6;
  color: var(--vc-texto-apoyo);
}

.vc-amigos .cap-lavanda .vh-trustindex-fallback,
.vc-amigos .cap-lavanda .vh-trustindex-fallback strong,
.vc-amigos .cap-lavanda .vh-fallback-text {
  color: var(--vc-texto);
}

.vc-amigos .cap-lavanda .vh-trustindex-fallback { border-color: var(--vc-linea); }

.vc-amigos #vc-cierre .vc-titulo {
  font-size: clamp(1.9rem, 4.4vw, 3.7rem);
}

@media (min-width: 901px) {
  .vc-amigos .vc-datos { display: block; }
  .vc-amigos .vc-dato:nth-child(2) { padding-top: 1.15rem; border-top: 1px solid var(--vc-linea); }
}

.vc-amigos .vc-cierre-inner {
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
}

.vc-amigos .vc-cierre-texto {
  max-width: none;
  margin-inline: 0;
  text-align: left;
}

.vc-amigos .vc-cierre-promesa { max-width: 34ch; margin-inline: 0; }

.vc-amigos .vc-cierre-foto { margin: 0; }

.vc-amigos .vc-cierre-foto-img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--vc-radio);
  border: 1px solid var(--vc-linea);
}

.vc-amigos .vc-cierre-acciones { text-align: center; }
.vc-amigos .vc-cierre-acciones .vc-letra-pequena,
.vc-amigos .vc-cierre-acciones .vc-cierre-wa { margin-inline: auto; max-width: 56ch; }

@media (min-width: 901px) {
  .vc-amigos .vc-cierre-inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    row-gap: clamp(2rem, 4vw, 3rem);
  }

  .vc-amigos .vc-cierre-acciones { grid-column: 1 / -1; }
}

.vc-amigos .vc-sala-lista {
  margin: 0 0 clamp(1.75rem, 4vw, 2.5rem);
  max-width: 46ch;
}

.vc-amigos .vc-video-pie {
  margin: clamp(1rem, 2.5vw, 1.5rem) 0 0;
  max-width: 46ch;
  font-size: 0.88rem;
  line-height: 1.5;
  color: var(--vc-texto-apoyo);
}

@media (min-width: 901px) {
  .vc-amigos .vc-mosaico { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}

.vc-amigos .vc-mosaico-celda {
  position: relative;
  aspect-ratio: 1 / 1;
}

.vc-amigos .vc-mosaico-celda img {
  position: absolute;
  left: 0;

  top: -9%;
  width: 100%;
  height: 118%;
  aspect-ratio: auto;
  object-fit: cover;
}
