/* mywacc.com — hoja única del sitio. Sin librerías: la primera pantalla no
   espera a ningún CDN de JavaScript. Marca heredada del sitio anterior. */

:root {
  --celeste: #00C7FB;
  --celeste-dark: #00A6D4;
  --celeste-light: #E6F9FF;
  --navy: #1C244B;
  --navy-dark: #0F1633;
  --navy-soft: #3D4A7A;
  --linea: #E4E9F2;
  --fondo: #FFFFFF;
  --fondo-suave: #F6FCFE;
  --ok: #0F8A5F;
  --alerta: #B45309;
  --radio: 16px;
  --sombra: 0 8px 30px rgba(28, 36, 75, .08);
  --sombra-alta: 0 18px 50px rgba(28, 36, 75, .14);
  --ancho: 1160px;
  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--fondo);
  color: var(--navy);
  font-family: Lato, "Segoe UI", system-ui, -apple-system, sans-serif;
  font-size: 17px;
  line-height: 1.6;
}

h1, h2, h3, h4 {
  font-family: Poppins, "Segoe UI", system-ui, -apple-system, sans-serif;
  line-height: 1.12;
  margin: 0 0 .6rem;
  letter-spacing: -.01em;
}
h1 { font-size: clamp(2rem, 5.4vw, 3.4rem); font-weight: 800; }
h2 { font-size: clamp(1.6rem, 3.8vw, 2.4rem); font-weight: 800; }
h3 { font-size: 1.15rem; font-weight: 700; }
h4 { font-size: .95rem; font-weight: 700; }
.acento { color: var(--celeste-dark); }

p { margin: 0 0 1rem; }
a { color: var(--celeste-dark); text-decoration: none; }
a:hover { text-decoration: underline; }
hr { border: 0; border-top: 1px solid var(--linea); margin: 2rem 0; }

.envoltura { max-width: var(--ancho); margin: 0 auto; padding: 0 16px; }
.estrecho { max-width: 720px; }
.bloque { padding: 3.4rem 0; }
.bloque-ajustado { padding: 1.6rem 0; }
.fondo-suave { background: var(--fondo-suave); }
.fondo-celeste { background: var(--celeste-light); }
.fondo-navy { background: var(--navy-dark); color: #fff; }
.fondo-navy h2, .fondo-navy h3 { color: #fff; }
.fondo-navy a { color: var(--celeste); }

.centro { text-align: center; }
.gris { color: var(--navy-soft); }
.chico { font-size: .9rem; }
.mini { font-size: .78rem; }
.sin-margen { margin-bottom: 0; }
.cabeza-seccion { max-width: 720px; margin: 0 auto 2rem; text-align: center; }
.cabeza-seccion p { font-size: 1.05rem; color: var(--navy-soft); }

/* ---------- barra superior y navegación ---------- */

.aviso-superior { background: var(--navy-dark); color: #fff; font-size: .85rem; text-align: center; padding: .5rem 16px; }
.aviso-superior strong { color: #fff; }
.aviso-superior a { color: var(--celeste); font-weight: 700; margin-left: .4rem; }

.cabecera { position: sticky; top: 0; z-index: 50; background: rgba(255, 255, 255, .94); backdrop-filter: blur(8px); border-bottom: 1px solid var(--linea); }
.cabecera-fila { max-width: var(--ancho); margin: 0 auto; padding: 0 16px; height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.cabecera-fila img { height: 34px; width: auto; display: block; }
.nav-enlaces { display: none; gap: 1.3rem; }
.nav-enlaces a { color: var(--navy); font-weight: 600; font-size: .92rem; }
.cabecera-acciones { display: flex; align-items: center; gap: .5rem; }
.solo-escritorio { display: none !important; }

.idioma { display: flex; align-items: center; border: 1px solid var(--linea); border-radius: 999px; padding: 2px; font-size: .74rem; font-weight: 700; }
.idioma span, .idioma a { padding: .2rem .55rem; border-radius: 999px; }
.idioma span { background: var(--navy); color: #fff; }
.idioma a { color: var(--navy-soft); }

/* ---------- botones ---------- */

.boton, .boton-linea, .boton-plano {
  display: inline-flex; align-items: center; justify-content: center; gap: .45rem;
  border-radius: 999px;
  font-family: Poppins, system-ui, sans-serif; font-weight: 700; font-size: .95rem;
  padding: .78rem 1.4rem;
  border: 2px solid transparent;
  cursor: pointer; transition: .18s; text-align: center;
}
.boton { background: var(--celeste); color: #fff; box-shadow: 0 10px 25px rgba(0, 199, 251, .35); }
.boton:hover { background: var(--celeste-dark); text-decoration: none; transform: translateY(-1px); }
.boton-linea { border-color: var(--navy); color: var(--navy); background: #fff; }
.boton-linea:hover { background: var(--navy); color: #fff; text-decoration: none; }
.boton-plano { color: var(--navy); background: transparent; padding: .5rem .8rem; }
.boton-plano:hover { color: var(--celeste-dark); text-decoration: none; }
.boton-claro { background: #fff; color: var(--celeste-dark); box-shadow: 0 10px 25px rgba(0, 0, 0, .12); }
.boton-claro:hover { background: var(--navy); color: #fff; }
.boton-chico { font-size: .86rem; padding: .6rem 1.1rem; }
.acciones { display: flex; flex-wrap: wrap; gap: .7rem; align-items: center; }

/* ---------- portada ---------- */

.portada {
  position: relative; overflow: hidden;
  background:
    radial-gradient(1200px 600px at 90% -20%, rgba(0, 199, 251, .18), transparent 60%),
    radial-gradient(900px 500px at -10% 110%, rgba(28, 36, 75, .08), transparent 60%),
    linear-gradient(180deg, #FFFFFF 0%, #F6FCFE 100%);
}
.portada::before {
  content: ''; position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: .4;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 800' preserveAspectRatio='none'><defs><linearGradient id='w1' x1='0' x2='1' y1='0' y2='1'><stop offset='0%25' stop-color='%2300C7FB' stop-opacity='0.16'/><stop offset='100%25' stop-color='%2300C7FB' stop-opacity='0'/></linearGradient><linearGradient id='w2' x1='0' x2='1' y1='0' y2='1'><stop offset='0%25' stop-color='%231C244B' stop-opacity='0.08'/><stop offset='100%25' stop-color='%231C244B' stop-opacity='0'/></linearGradient></defs><path d='M0,400 C200,300 400,500 600,400 C800,300 1000,500 1200,400 L1200,800 L0,800 Z' fill='url(%23w1)'/><path d='M0,500 C150,420 350,580 600,500 C850,420 1050,580 1200,500 L1200,800 L0,800 Z' fill='url(%23w2)'/><circle cx='1000' cy='150' r='200' fill='%2300C7FB' opacity='0.05'/><circle cx='150' cy='600' r='180' fill='%231C244B' opacity='0.03'/></svg>");
  background-size: cover; background-position: center;
}
.portada > * { position: relative; z-index: 1; }
.portada-rejilla { display: grid; gap: 2.2rem; align-items: center; padding: 2.6rem 0 3rem; }
.portada-texto p.grande { font-size: 1.12rem; color: var(--navy-soft); }

.etiqueta {
  display: inline-flex; align-items: center; gap: .4rem;
  background: var(--celeste-light); color: var(--celeste-dark);
  font-weight: 700; font-size: .74rem; letter-spacing: .03em; text-transform: uppercase;
  padding: .32rem .75rem; border-radius: 999px; margin-bottom: 1rem;
}
.etiqueta::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: var(--celeste); }

/* la bandeja de correos: ilustración de la portada, hecha en HTML */
.bandeja { position: relative; max-width: 440px; margin: 0 auto; }
.bandeja-marco {
  background: #fff; border: 1px solid var(--linea); border-radius: 22px;
  box-shadow: var(--sombra-alta); overflow: hidden;
}
.bandeja-cabeza {
  display: flex; align-items: center; gap: .6rem;
  padding: .8rem 1rem; background: var(--navy); color: #fff;
  font-family: Poppins, system-ui, sans-serif; font-weight: 700; font-size: .85rem;
}
.bandeja-cabeza .avatar { width: 28px; height: 28px; border-radius: 50%; background: var(--celeste); display: grid; place-items: center; color: #fff; font-size: .8rem; }
.bandeja-cabeza small { margin-left: auto; font-weight: 400; opacity: .75; }
.bandeja-item { display: grid; grid-template-columns: 42px 1fr; gap: .7rem; padding: .85rem 1rem; border-top: 1px solid var(--linea); align-items: start; }
.bandeja-item .icono { width: 42px; height: 42px; }
.bandeja-item b { display: block; font-family: Poppins, system-ui, sans-serif; font-size: .92rem; }
.bandeja-item .hora { font-family: Poppins, system-ui, sans-serif; font-weight: 800; color: var(--celeste-dark); font-size: .8rem; }
.bandeja-item p { font-size: .84rem; color: var(--navy-soft); margin: .15rem 0 0; }
.bandeja-sello {
  position: absolute; right: -8px; top: -14px;
  background: var(--celeste); color: #fff; font-family: Poppins, system-ui, sans-serif;
  font-weight: 800; font-size: .78rem; padding: .4rem .8rem; border-radius: 999px;
  box-shadow: 0 10px 25px rgba(0, 199, 251, .4); transform: rotate(4deg);
}

/* ---------- campo de RUT ---------- */

.caja-rut { background: #fff; border: 1px solid var(--linea); border-radius: var(--radio); padding: 1rem; box-shadow: var(--sombra); }
.fila-rut { display: flex; flex-direction: column; gap: .55rem; }
.fila-rut input {
  flex: 1; font: inherit; font-size: 1.05rem; padding: .78rem 1rem;
  border: 2px solid var(--linea); border-radius: 999px; background: #fff; color: var(--navy); min-width: 0;
}
.fila-rut input:focus { outline: none; border-color: var(--celeste); }
.ayuda-rut { font-size: .86rem; color: var(--navy); margin: .6rem 0 0; }
.error-rut { color: #B42318; font-size: .84rem; margin: .6rem 0 0; font-weight: 600; }
.cola-rut { color: var(--alerta); font-size: .84rem; margin: .6rem 0 0; font-weight: 600; }
.oculto-visual { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- íconos y tarjetas ---------- */

.icono {
  width: 48px; height: 48px; border-radius: 12px; flex: none;
  background: linear-gradient(135deg, var(--celeste), var(--celeste-dark));
  display: grid; place-items: center; color: #fff;
}
.icono.navy { background: linear-gradient(135deg, var(--navy), var(--navy-soft)); }
.icono.azul { background: linear-gradient(135deg, #0053FF, var(--celeste)); }
.icono.verde { background: linear-gradient(135deg, #0F8A5F, #34C38F); }
.icono svg { width: 22px; height: 22px; }

.tarjeta {
  background: #fff; border: 1px solid var(--linea); border-radius: var(--radio);
  padding: 1.4rem; box-shadow: var(--sombra); display: flex; flex-direction: column; gap: .6rem;
}
.tarjeta h3 { margin: 0; }
.tarjeta p { margin: 0; }
.tarjeta .al-pie { margin-top: auto; padding-top: .6rem; }
.tarjeta.destacada { border: 2px solid var(--celeste); position: relative; }
.tarjeta.destacada::after {
  content: attr(data-sello); position: absolute; top: 0; right: 0;
  background: var(--celeste); color: #fff; font-size: .62rem; font-weight: 800; letter-spacing: .08em;
  padding: .25rem .7rem; border-radius: 0 var(--radio) 0 12px;
}

.rejilla { display: grid; gap: 1rem; }
.rejilla-2 { grid-template-columns: 1fr; }
.rejilla-3 { grid-template-columns: 1fr; }
.rejilla-4 { grid-template-columns: 1fr; }

.cita {
  border-left: 4px solid var(--celeste); background: var(--celeste-light);
  padding: 1rem 1.2rem; border-radius: 0 var(--radio) var(--radio) 0;
  font-family: Poppins, system-ui, sans-serif; font-weight: 600; font-size: 1.05rem; margin: 1.4rem 0;
}
.cita p:last-child { margin-bottom: 0; }

.cifras { display: grid; gap: 1rem; grid-template-columns: 1fr 1fr; }
.cifra { background: #fff; border: 1px solid var(--linea); border-radius: var(--radio); padding: 1rem 1.1rem; }
.cifra b { display: block; font-family: Poppins, system-ui, sans-serif; font-size: 1.7rem; font-weight: 800; line-height: 1.1; color: var(--navy); }
.cifra span { font-size: .82rem; color: var(--navy-soft); }

.nota-prueba { font-size: .72rem; color: var(--navy-soft); text-transform: uppercase; letter-spacing: .06em; font-weight: 700; }

.lista-limpia { list-style: none; padding: 0; margin: 0; }
.lista-limpia li { position: relative; padding-left: 1.6rem; margin-bottom: .55rem; }
.lista-limpia li::before {
  content: ''; position: absolute; left: 0; top: .42rem; width: 16px; height: 16px; border-radius: 50%;
  background: var(--celeste-light) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300A6D4' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 13l4 4L19 7'/></svg>") center / 10px no-repeat;
}

.chips { display: flex; flex-wrap: wrap; gap: .45rem; }
.chip { background: #fff; border: 1px solid var(--linea); border-radius: 999px; padding: .3rem .7rem; font-size: .8rem; font-weight: 600; color: var(--navy); }

/* las dos columnas «tu contador / nadie» */
.contraste { display: grid; gap: 1rem; grid-template-columns: 1fr; }
.contraste > div { border-radius: var(--radio); padding: 1.3rem; }
.contraste .lado-a { background: #fff; border: 1px solid var(--linea); }
.contraste .lado-b { background: var(--navy); color: #fff; }
.contraste .lado-b h3 { color: #fff; }
.contraste .lado-b .chips .chip { background: rgba(255, 255, 255, .1); border-color: rgba(255, 255, 255, .18); color: #fff; }

/* ---------- correo de ejemplo ---------- */

.correo { border: 1px solid var(--linea); border-radius: var(--radio); background: #fff; overflow: hidden; box-shadow: var(--sombra); display: flex; flex-direction: column; }
.correo-cabeza { display: flex; align-items: center; gap: .7rem; background: var(--fondo-suave); border-bottom: 1px solid var(--linea); padding: .7rem .9rem; font-size: .82rem; color: var(--navy-soft); }
.correo-cabeza b { color: var(--navy); font-family: Poppins, system-ui, sans-serif; display: block; }
.correo-cabeza .icono { width: 36px; height: 36px; border-radius: 10px; }
.correo-cabeza .icono svg { width: 18px; height: 18px; }
.correo-cuerpo { padding: .9rem; font-size: .9rem; }
.correo-cuerpo p:last-child { margin-bottom: 0; }
.hora { font-family: Poppins, system-ui, sans-serif; font-weight: 800; color: var(--celeste-dark); }

/* ---------- tablas ---------- */

.tabla-marco {
  overflow-x: auto; border: 1px solid var(--linea); border-radius: var(--radio);
  background:
    linear-gradient(to right, #fff 30%, rgba(255, 255, 255, 0)) left center,
    linear-gradient(to left, #fff 30%, rgba(255, 255, 255, 0)) right center,
    radial-gradient(farthest-side at 0 50%, rgba(28, 36, 75, .14), transparent) left center,
    radial-gradient(farthest-side at 100% 50%, rgba(28, 36, 75, .14), transparent) right center;
  background-repeat: no-repeat;
  background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
  background-attachment: local, local, scroll, scroll;
}
table { width: 100%; border-collapse: collapse; font-size: .9rem; min-width: 520px; }
th, td { text-align: left; padding: .7rem .9rem; border-bottom: 1px solid var(--linea); vertical-align: top; }
th { font-family: Poppins, system-ui, sans-serif; font-weight: 700; background: var(--fondo-suave); font-size: .82rem; }
tbody tr:last-child td { border-bottom: 0; }
.precio { font-family: Poppins, system-ui, sans-serif; font-weight: 800; white-space: nowrap; }

details { border: 1px solid var(--linea); border-radius: var(--radio); background: #fff; padding: 0 1rem; }
details summary { cursor: pointer; padding: .9rem 0; font-family: Poppins, system-ui, sans-serif; font-weight: 700; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
details summary::-webkit-details-marker { display: none; }
details summary::after { content: '+'; font-size: 1.3rem; color: var(--celeste-dark); }
details[open] summary::after { content: '−'; }
details > *:not(summary) { margin-bottom: 1rem; }

/* ---------- precios: cuatro puertas ---------- */

.puertas-lista { display: grid; grid-template-columns: 1fr; gap: .5rem; margin: 0 auto 1.6rem; max-width: 960px; }
.puerta {
  appearance: none; background: #fff; border: 1px solid var(--linea); border-radius: 999px;
  padding: .7rem 1rem; font-family: Poppins, system-ui, sans-serif; font-weight: 700; font-size: .9rem;
  color: var(--navy-soft); cursor: pointer; transition: .16s; text-align: center;
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
}
.puerta svg { width: 18px; height: 18px; }
.puerta:hover { border-color: var(--celeste); color: var(--navy); }
.puerta[aria-selected="true"] { background: var(--navy); border-color: var(--navy); color: #fff; box-shadow: var(--sombra); }
[role="tabpanel"][hidden] { display: none; }
.plan { display: flex; flex-direction: column; gap: .6rem; }
.plan .precio-grande { font-family: Poppins, system-ui, sans-serif; font-weight: 800; font-size: 1.9rem; line-height: 1; }
.plan .precio-grande small { font-size: .85rem; font-weight: 600; color: var(--navy-soft); }
.plan ul { margin: .2rem 0 0; }
.plan .lista-limpia li { font-size: .9rem; margin-bottom: .4rem; }

/* ---------- formulario de calificación ---------- */

.pregunta { margin-bottom: 1.1rem; }
.pregunta > span { display: block; font-family: Poppins, system-ui, sans-serif; font-weight: 700; font-size: .95rem; margin-bottom: .5rem; }
.opciones { display: flex; flex-wrap: wrap; gap: .4rem; }
.opcion { position: relative; }
.opcion input { position: absolute; opacity: 0; pointer-events: none; }
.opcion span { display: inline-block; border: 1px solid var(--linea); border-radius: 999px; padding: .42rem .85rem; font-size: .86rem; font-weight: 600; cursor: pointer; transition: .16s; background: #fff; }
.opcion input:focus-visible + span { outline: 2px solid var(--celeste); outline-offset: 2px; }
.opcion input:checked + span { background: var(--navy); border-color: var(--navy); color: #fff; }
.resultado { margin-top: 1.2rem; }
.resultado[hidden] { display: none; }

/* ---------- cierre y pie ---------- */

.cierre { background: linear-gradient(135deg, var(--celeste), var(--celeste-dark)); color: #fff; }
.cierre h2 { color: #fff; }
.cierre .caja-rut { box-shadow: var(--sombra-alta); }

.pie { background: var(--navy-dark); color: #fff; padding: 2.8rem 0 1.4rem; font-size: .9rem; }
.pie a { color: rgba(255, 255, 255, .82); }
.pie a:hover { color: var(--celeste); }
.pie img { height: 36px; filter: brightness(0) invert(1); }
.pie-rejilla { display: grid; gap: 1.6rem; grid-template-columns: 1fr; }
.pie h4 { color: var(--celeste); text-transform: uppercase; letter-spacing: .06em; font-size: .76rem; margin-bottom: .7rem; }
.pie ul { list-style: none; margin: 0; padding: 0; }
.pie li { margin-bottom: .4rem; }
.pie-legal { border-top: 1px solid rgba(255, 255, 255, .12); margin-top: 2rem; padding-top: 1.1rem; color: rgba(255, 255, 255, .55); font-size: .76rem; }
.pie-enlaces { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: .8rem; }

.contacto-flotante { position: fixed; right: 16px; bottom: 16px; z-index: 60; width: 54px; height: 54px; border-radius: 50%; background: var(--navy); display: grid; place-items: center; box-shadow: 0 8px 24px rgba(15, 22, 51, .35); }
.contacto-flotante:hover { background: var(--celeste-dark); }

/* ---------- escritorio ---------- */

@media (min-width: 640px) {
  .fila-rut { flex-direction: row; align-items: center; }
  .cifras { grid-template-columns: repeat(4, 1fr); }
  .puertas-lista { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 760px) {
  .rejilla-2 { grid-template-columns: 1fr 1fr; }
  .contraste { grid-template-columns: 1fr 1fr; }
  .pie-rejilla { grid-template-columns: 2fr 1fr 1fr; }
  .bloque { padding: 4.4rem 0; }
  .solo-escritorio { display: inline-flex !important; }
}
@media (min-width: 960px) {
  .rejilla-3 { grid-template-columns: repeat(3, 1fr); }
  .rejilla-4 { grid-template-columns: repeat(4, 1fr); }
  .puertas-lista { grid-template-columns: repeat(4, 1fr); }
  .nav-enlaces { display: flex; }
  .portada-rejilla { grid-template-columns: 1.15fr .85fr; padding: 3.6rem 0 4rem; }
}

@media print {
  .cabecera, .aviso-superior, .contacto-flotante { display: none; }
  [role="tabpanel"][hidden] { display: block !important; }
}

/* ---------- lápidas de encargos (tombstones) ---------- */

.lapidas { display: grid; gap: .8rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 1.4rem 0 .6rem; }
.lapida {
  background: #fff; border: 1px solid var(--linea); border-radius: 10px;
  padding: 1rem .8rem .9rem; text-align: center; display: flex; flex-direction: column; justify-content: center; gap: .35rem;
  position: relative; min-width: 0; overflow-wrap: anywhere;
}
.lapida::before { content: ''; display: block; width: 28px; height: 3px; background: var(--celeste); margin: 0 auto .4rem; border-radius: 2px; }
.lapida b { font-family: Poppins, system-ui, sans-serif; font-size: .86rem; line-height: 1.25; color: var(--navy); }
.lapida span { font-size: .78rem; color: var(--navy-soft); }
.lapida small { font-size: .72rem; font-weight: 700; color: var(--celeste-dark); letter-spacing: .04em; }
@media (min-width: 640px) { .lapidas { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 960px) { .lapidas { grid-template-columns: repeat(5, 1fr); } }

/* ---------- enlace a LinkedIn de los fundadores ---------- */

.linkedin {
  display: inline-flex; align-items: center; gap: .35rem;
  color: var(--navy); font-weight: 700; white-space: nowrap;
}
.linkedin svg { width: 18px; height: 18px; fill: #0A66C2; flex: none; }
.linkedin:hover { color: #0A66C2; text-decoration: none; }

/* ---------- ruleta de servicios (portada) ---------- */

.ruleta { position: relative; max-width: 460px; margin: 0 auto; }
.ruleta-pista { position: relative; min-height: 420px; }
.ruleta-item {
  position: absolute; inset: 0; opacity: 0; visibility: hidden; transform: translateY(8px);
  transition: opacity .45s ease, transform .45s ease, visibility 0s linear .45s;
  background: #fff; border: 1px solid var(--linea); border-radius: 22px;
  box-shadow: var(--sombra-alta); padding: 1.4rem; display: flex; flex-direction: column; gap: .7rem;
}
.ruleta-item[aria-hidden="false"] { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; position: relative; }
.ruleta:not([data-ruleta-lista]) .ruleta-item { transition: none; }
.ruleta-item .etiqueta { margin-bottom: 0; }
.ruleta-item h3 { font-size: 1.35rem; margin: 0; }
.ruleta-item p { margin: 0; }
.ruleta-item .al-pie { margin-top: auto; }
.ruleta-mando { display: flex; align-items: center; justify-content: center; gap: .6rem; margin-top: .9rem; }
.ruleta-punto {
  appearance: none; border: 0; cursor: pointer; padding: 0;
  width: 10px; height: 10px; border-radius: 50%; background: rgba(28, 36, 75, .2); transition: .2s;
}
.ruleta-punto[aria-selected="true"] { background: rgba(0, 166, 212, .25); width: 34px; border-radius: 999px; position: relative; overflow: hidden; }
.ruleta-punto[aria-selected="true"]::after {
  content: ''; position: absolute; inset: 0; background: var(--celeste-dark); border-radius: 999px;
  transform-origin: left; animation: ruleta-avance var(--ruleta-paso, 5s) linear forwards;
}
.ruleta[data-ruleta-pausa="si"] .ruleta-punto[aria-selected="true"]::after { animation-play-state: paused; }
@keyframes ruleta-avance { from { transform: scaleX(0); } to { transform: scaleX(1); } }
.ruleta-flecha {
  appearance: none; cursor: pointer; width: 34px; height: 34px; border-radius: 50%;
  border: 1px solid var(--linea); background: #fff; color: var(--navy); display: grid; place-items: center;
}
.ruleta-flecha:hover { border-color: var(--celeste); color: var(--celeste-dark); }

/* mini-ilustraciones de cada servicio */
.mini-valor { background: var(--fondo-suave); border: 1px solid var(--linea); border-radius: 14px; padding: .9rem 1rem; }
.mini-valor .rango { font-family: Poppins, system-ui, sans-serif; font-weight: 800; font-size: 1.3rem; color: var(--navy); }
.mini-valor .barra { height: 10px; border-radius: 999px; background: linear-gradient(90deg, var(--celeste-light), var(--celeste), var(--navy)); margin: .5rem 0 .3rem; position: relative; }
.mini-valor .barra::after { content: ''; position: absolute; left: 58%; top: -4px; width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 3px solid var(--navy); }
.mini-semaforo { display: grid; gap: .4rem; }
.mini-semaforo > div { display: flex; align-items: center; gap: .6rem; font-size: .84rem; background: var(--fondo-suave); border: 1px solid var(--linea); border-radius: 10px; padding: .45rem .7rem; }
.mini-semaforo i { width: 10px; height: 10px; border-radius: 50%; flex: none; }
.mini-semaforo b { margin-left: auto; font-family: Poppins, system-ui, sans-serif; font-size: .78rem; color: var(--navy-soft); }
.mini-correos { display: grid; gap: .4rem; }
.mini-correos > div { display: grid; grid-template-columns: 32px 1fr; gap: .5rem; align-items: center; font-size: .82rem; background: var(--fondo-suave); border: 1px solid var(--linea); border-radius: 10px; padding: .45rem .6rem; }
.mini-correos .icono { width: 32px; height: 32px; border-radius: 9px; }
.mini-correos .icono svg { width: 16px; height: 16px; }
.mini-correos b { display: block; font-family: Poppins, system-ui, sans-serif; font-size: .8rem; }
.mini-correos span { color: var(--celeste-dark); font-weight: 700; font-size: .74rem; }
.mini-contador { display: flex; gap: .5rem; flex-wrap: wrap; }
.mini-contador > div { flex: 1 1 30%; background: var(--fondo-suave); border: 1px solid var(--linea); border-radius: 10px; padding: .6rem; text-align: center; }
.mini-contador b { display: block; font-family: Poppins, system-ui, sans-serif; font-size: 1.1rem; }
.mini-contador span { font-size: .72rem; color: var(--navy-soft); }

@media (prefers-reduced-motion: reduce) { .ruleta-item { transition: none; } .ruleta-punto[aria-selected="true"]::after { animation: none; transform: none; } }

/* ---------- sección del equipo (al final) ---------- */

.equipo { text-align: center; padding: 2.6rem 0 2.2rem; }
.equipo .cabeza-seccion { margin-bottom: .9rem; }
.equipo .cabeza-seccion p { margin-bottom: 0; }
.equipo-respaldo img { mix-blend-mode: multiply; }
.equipo-fundadores { display: flex; flex-wrap: wrap; justify-content: center; gap: .7rem; margin: .9rem 0 1.2rem; }
.equipo-fundadores .linkedin {
  background: #fff; border: 1px solid var(--linea); border-radius: 999px; padding: .55rem 1.1rem;
  box-shadow: var(--sombra); font-family: Poppins, system-ui, sans-serif; font-size: .92rem;
}
.equipo-fundadores .linkedin svg { width: 20px; height: 20px; }
.equipo-fundadores .linkedin:hover { border-color: #0A66C2; }
.equipo-respaldo { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .6rem 1.8rem; }
.equipo-respaldo img { height: 38px; width: auto; }
.equipo-respaldo p { width: 100%; margin: 0; }
