/* ════════════════════════════════════════════════════════
   FLUJO DE TRABAJO — A decorativa izquierda + timeline derecha
   ════════════════════════════════════════════════════════ */

/* ─── Grid principal ──────────────────────────── */
.flujo-trabajo__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-6);
    align-items: start;
}

@media (min-width: 768px) {
    .flujo-trabajo__grid {
        grid-template-columns: 0.7fr 1fr;
        gap: var(--space-7);
        align-items: center;
    }
}

/* ─── Columna izquierda: letra A ──────────────── */
.flujo-trabajo__figura {
    width: 100%;
    min-width: 0;
    position: sticky;
    top: var(--space-4);
}

.flujo-trabajo__svg {
    width: 100%;
    height: auto;
    display: block;
    overflow: visible;
}

/* ─── Columna derecha ─────────────────────────── */
.flujo-trabajo__derecha {
    min-width: 0;
}

/* ─── Cabecera ────────────────────────────────── */
.flujo-trabajo__cabecera {
    margin-bottom: var(--space-6);
}

/* ─── Texto oculto ────────────────────────────── */
.flujo-trabajo__oculto-lector {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* ─── Lista ───────────────────────────────────── */
.flujo-trabajo__lista {
    list-style: none;
    margin: 0;
    padding: 0;
    counter-reset: paso;
}

/* ─── Item ────────────────────────────────────── */
.flujo-trabajo__item {
    counter-increment: paso;
    position: relative;
    display: flex;
    gap: var(--space-4);
    padding-bottom: var(--space-5);
    align-items: flex-start;
}

.flujo-trabajo__item:last-child {
    padding-bottom: 0;
}

/* ─── Línea vertical entre círculos ──────────── */
.flujo-trabajo__item:not(:last-child)::before {
    content: '';
    position: absolute;
    top: 4rem;
    left: calc(2rem - 0.5px);
    width: 1px;
    bottom: 0;
    background: linear-gradient(
        to bottom,
        var(--border-soft) 0%,
        transparent 100%
    );
    z-index: 1;
}

/* ─── Círculo numerado ────────────────────────── */
.flujo-trabajo__marcador {
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    background: var(--bg-surface-accent);
    color: var(--text-light);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--ff-mono, ui-monospace, monospace);
    font-size: var(--fs-body);
    font-weight: var(--fw-bold);
    position: relative;
    z-index: 2;
    flex-shrink: 0;
}

.flujo-trabajo__marcador::before {
    content: counter(paso, decimal-leading-zero);
}

/* ─── Contenido ───────────────────────────────── */
.flujo-trabajo__contenido {
    padding-top: calc((4rem - var(--fs-4, 1.5rem)) / 2);
    min-width: 0;
}

.flujo-trabajo__paso-titulo {
    font-size: var(--fs-4);
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 var(--space-2);
    letter-spacing: var(--ls-0);
    color: var(--text-dark);
}

.flujo-trabajo__descripcion {
    font-size: var(--fs-body);
    color: var(--text-soft);
    margin: 0;
    line-height: 1.6;
    max-width: 55ch;
}

/* ─── Mobile: figura oculta ───────────────────── */
@media (max-width: 767px) {
    .flujo-trabajo__figura {
        display: none;
    }
}

/* ─── Reduce motion ───────────────────────────── */
@media (prefers-reduced-motion: reduce) {
    .flujo-trabajo__item::before {
        transition: none;
    }
}


@media (min-width: 768px) {
    .flujo-trabajo__grid {
align-items: start;
        top:10rem;
    }
}