/* Agendate · portada y términos (se apoya en ../css/style.css de BYTEK) */
.portada--agendate { padding-bottom: 150px; }
.portada--agendate h1 { max-width: 18ch; }
.boton--celeste { background: var(--celeste); color: var(--noche); }
.boton--celeste:hover { background: var(--celeste-2); box-shadow: 0 10px 28px rgba(142, 216, 248, .3); }

/* Rubros */
.rubros__grupo { font-family: var(--mono); font-size: .85rem; font-weight: 500; color: var(--celeste-2); margin: 30px 0 12px; }
.rubros__grupo:first-child { margin-top: 0; }
.rubros { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 12px; }
.rubro {
  display: grid; grid-template-columns: 44px 1fr; column-gap: 12px; align-items: center;
  padding: 14px; border-radius: 16px; border: 1px solid var(--borde); background: linear-gradient(180deg, #121848, #0c1030);
  transition: transform .25s, border-color .25s, box-shadow .25s;
}
.rubro:hover, .rubro:focus-visible { transform: translateY(-3px); border-color: var(--c); box-shadow: 0 12px 30px -12px var(--c); }
.rubro__icono { grid-row: span 2; width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: var(--c-fondo); }
.rubro__icono svg { width: 26px; height: 26px; fill: none; stroke: var(--c); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.rubro__nombre { color: var(--blanco); font-weight: 600; line-height: 1.2; }
.rubro__ej { font-size: .78rem; color: var(--texto); opacity: .75; }
.rubros__otro { margin-top: 26px; font-size: .95rem; }

/* Cómo funciona: 3 pasos */
.pasos--tres { grid-template-columns: repeat(3, 1fr); }
.pasos--tres::before { left: 16%; right: 16%; }

/* Planes en pesos */
.plan__precio small { font-size: .9rem; }
.plan .boton { margin-top: auto; }
.promo { text-align: center; margin-top: 30px; display: grid; gap: 6px; }
.promo__chico { font-size: .85rem; opacity: .85; }

/* Términos */
.legal { padding: 60px 0 90px; }
.legal .contenedor { max-width: 780px; }
.legal h1 { color: var(--blanco); font-size: clamp(1.9rem, 4.5vw, 2.6rem); line-height: 1.15; margin-bottom: 8px; }
.legal h2 { font-size: 1.25rem; margin: 38px 0 10px; letter-spacing: 0; }
.legal h3 { font-size: 1rem; margin: 20px 0 6px; }
.legal p, .legal li { margin-bottom: 10px; }
.legal ol, .legal ul { list-style: revert; padding-left: 22px; }
.legal table { width: 100%; border-collapse: collapse; margin: 12px 0 16px; font-size: .92rem; }
.legal th, .legal td { text-align: left; padding: 9px 10px; border-bottom: 1px solid var(--borde); vertical-align: top; }
.legal th { color: var(--blanco); }
.legal__fecha { font-family: var(--mono); font-size: .8rem; color: var(--celeste); }
.legal__indice { margin: 26px 0; padding: 18px 22px; border: 1px solid var(--borde); border-radius: 14px; background: var(--noche-2); }
.legal__indice a { color: var(--celeste); }
.legal__nota { padding: 14px 18px; border-left: 3px solid var(--celeste); background: var(--noche-2); border-radius: 0 10px 10px 0; font-size: .92rem; }

@media (max-width: 960px) {
  .pasos--tres { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .rubros { grid-template-columns: 1fr 1fr; gap: 10px; }
  .rubro { grid-template-columns: 1fr; padding: 12px; row-gap: 2px; }
  .rubro__icono { grid-row: auto; width: 38px; height: 38px; margin-bottom: 6px; }
  .legal table, .legal thead, .legal tbody, .legal tr, .legal th, .legal td { display: block; }
  .legal thead { display: none; }
  .legal td { border: 0; padding: 2px 0; }
  .legal tr { border-bottom: 1px solid var(--borde); padding: 8px 0; }
}
